tge/engine/audio/oggMixedStreamSource.h
2017-04-17 06:17:10 -06:00

51 lines
1.1 KiB
C++
Executable File

//--------------------------------------------
// oggMixedStreamSource.h
// header for audio stream dummy class, basicly
// an audio buffer filled remotely
//
//--------------------------------------------
#ifndef _OGGMIXEDSTREAMSOURCE_H_
#define _OGGMIXEDSTREAMSOURCE_H_
#ifndef _AUDIOSTREAMSOURCE_H_
#include "audio/audioStreamSource.h"
#endif
#define BUFFERCNT 128
class OggMixedStreamSource: public AudioStreamSource
{
public:
OggMixedStreamSource(const char *filename);
virtual ~OggMixedStreamSource();
virtual bool initStream();
virtual bool updateBuffers();
virtual void freeStream();
ALuint GetAvailableBuffer();
bool QueueBuffer(ALuint BufferID);
void PlayStream();
virtual F32 getElapsedTime()
{
return 0.0;
}
virtual F32 getTotalTime()
{
return 1.0f;
}
private:
ALuint mBufferList[BUFFERCNT];
bool m_fBufferInUse[BUFFERCNT];
bool bBuffersAllocated;
void clear();
};
#endif // _OGGMIXEDSTREAMSOURCE_H_