zengine/include/ZE_ZMusic.h

54 lines
1.3 KiB
C++

/*******************************************************************************
This file is Part of the ZEngine Library for 2D game development.
Copyright (C) 2002-2004 James Turk
Licensed under a BSD-style license.
The maintainer of this library is James Turk (james@conceptofzero.net)
and the home of this Library is http://www.zengine.sourceforge.net
*******************************************************************************/
#ifndef __ze_zmusic_h__
#define __ze_zmusic_h__
#include "ZE_ZEngine.h"
#ifdef USE_SDL_MIXER
namespace ZE
{
class ZMusic
{
protected:
ZEngine* rEngine;
Mix_Music *rMusic;
public:
static const int LoopInfinite;
ZMusic();
ZMusic(std::string filename);
virtual ~ZMusic();
void Open(std::string filename);
void OpenFromZRF(std::string resourceId);
void Release();
void Play(int loopNum=0, int fadeTime=0) const;
void Pause() const;
void Unpause() const;
void Rewind() const;
void Stop(int fadeTime=0) const;
void SetVolume(int volume);
bool IsLoaded() const;
bool IsPlaying() const;
bool IsPaused() const;
int GetVolume() const;
};
}
#endif //USE_SDL_MIXER
#endif //__ze_zmusic_h__