51 lines
1.1 KiB
C++
Executable File
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_
|