dhewm3/neo/sound/efxlib.h
dhewg 690967c276 Split EAX usage off OpenAL
New define ID_OPENAL_EAX to enable the deprecated EAX on top
of OpenAL.
OpenAL Soft can now be used.
2011-12-11 16:56:11 +01:00

62 lines
895 B
C++

/*
*/
#ifndef __EFXLIBH
#define __EFXLIBH
#if ID_OPENAL_EAX
#include "../openal/include/eax4.h"
#endif
///////////////////////////////////////////////////////////
// Class definitions.
class idSoundEffect
{
public:
idSoundEffect() {
};
~idSoundEffect() {
if ( data && datasize ) {
Mem_Free( data );
data = NULL;
}
}
idStr name;
int datasize;
void *data;
};
class idEFXFile
{
private:
protected:
// Protected data members.
public:
// Public data members.
private:
public:
idEFXFile();
~idEFXFile();
bool FindEffect( idStr &name, idSoundEffect **effect, int *index );
bool ReadEffect( idLexer &lexer, idSoundEffect *effect );
bool LoadFile( const char *filename, bool OSPath = false );
void UnloadFile( void );
void Clear( void );
idList<idSoundEffect *>effects;
};
///////////////////////////////////////////////////////////
#endif // __EFXLIBH