include/Framework.h

00001 #ifndef _FRAMEWORK_H_ // Win32 version
00002 #define _FRAMEWORK_H_
00003 
00004 // Get some classic includes
00005 #include<Windows.h>
00006 #include<stdio.h>
00007 #include<io.h>
00008 #include<fcntl.h>
00009 #include<conio.h>
00010 #include<al.h>
00011 #include<alc.h>
00012 #include<efx.h>
00013 #include<efx-creative.h>
00014 #include<xram.h>
00015 #include<disableWarnings.h>
00016 
00017 // Initialization and shutdown
00018 void ALFWInit();
00019 void ALFWShutdown();
00020 
00021 // OpenAL initialization and shutdown
00022 ALboolean ALFWInitOpenAL();
00023 ALboolean ALFWShutdownOpenAL();
00024 
00025 // File loading functions
00026 ALboolean ALFWLoadWaveToBuffer(const char *szWaveFile, ALuint uiBufferID, ALenum eXRAMBufferMode = 0);
00027 
00028 // Extension Queries 
00029 ALboolean ALFWIsXRAMSupported();
00030 ALboolean ALFWIsEFXSupported();
00031 
00032 
00033 // Utilities
00034 ALvoid ALFWprintf( const ALchar * x, ... );
00035 ALchar *ALFWaddMediaPath(const ALchar *filename);
00036 ALint ALFWKeyPress(void);
00037 
00038 // EFX Extension function pointer variables
00039 
00040 // Effect objects
00041 extern LPALGENEFFECTS alGenEffects;
00042 extern LPALDELETEEFFECTS alDeleteEffects;
00043 extern LPALISEFFECT alIsEffect;
00044 extern LPALEFFECTI alEffecti;
00045 extern LPALEFFECTIV alEffectiv;
00046 extern LPALEFFECTF alEffectf;
00047 extern LPALEFFECTFV alEffectfv;
00048 extern LPALGETEFFECTI alGetEffecti;
00049 extern LPALGETEFFECTIV alGetEffectiv;
00050 extern LPALGETEFFECTF alGetEffectf;
00051 extern LPALGETEFFECTFV alGetEffectfv;
00052 
00053 // Filter objects
00054 extern LPALGENFILTERS alGenFilters;
00055 extern LPALDELETEFILTERS alDeleteFilters;
00056 extern LPALISFILTER alIsFilter;
00057 extern LPALFILTERI alFilteri;
00058 extern LPALFILTERIV alFilteriv;
00059 extern LPALFILTERF alFilterf;
00060 extern LPALFILTERFV alFilterfv;
00061 extern LPALGETFILTERI alGetFilteri;
00062 extern LPALGETFILTERIV alGetFilteriv;
00063 extern LPALGETFILTERF alGetFilterf;
00064 extern LPALGETFILTERFV alGetFilterfv;
00065 
00066 // Auxiliary slot object
00067 extern LPALGENAUXILIARYEFFECTSLOTS alGenAuxiliaryEffectSlots;
00068 extern LPALDELETEAUXILIARYEFFECTSLOTS alDeleteAuxiliaryEffectSlots;
00069 extern LPALISAUXILIARYEFFECTSLOT alIsAuxiliaryEffectSlot;
00070 extern LPALAUXILIARYEFFECTSLOTI alAuxiliaryEffectSloti;
00071 extern LPALAUXILIARYEFFECTSLOTIV alAuxiliaryEffectSlotiv;
00072 extern LPALAUXILIARYEFFECTSLOTF alAuxiliaryEffectSlotf;
00073 extern LPALAUXILIARYEFFECTSLOTFV alAuxiliaryEffectSlotfv;
00074 extern LPALGETAUXILIARYEFFECTSLOTI alGetAuxiliaryEffectSloti;
00075 extern LPALGETAUXILIARYEFFECTSLOTIV alGetAuxiliaryEffectSlotiv;
00076 extern LPALGETAUXILIARYEFFECTSLOTF alGetAuxiliaryEffectSlotf;
00077 extern LPALGETAUXILIARYEFFECTSLOTFV alGetAuxiliaryEffectSlotfv;
00078 
00079 // XRAM Extension function pointer variables and enum values
00080 
00081 typedef ALboolean (__cdecl *LPEAXSETBUFFERMODE)(ALsizei n, ALuint *buffers, ALint value);
00082 typedef ALenum    (__cdecl *LPEAXGETBUFFERMODE)(ALuint buffer, ALint *value);
00083 
00084 extern LPEAXSETBUFFERMODE eaxSetBufferMode;
00085 extern LPEAXGETBUFFERMODE eaxGetBufferMode;
00086 
00087 // X-RAM Enum values
00088 extern ALenum eXRAMSize, eXRAMFree;
00089 extern ALenum eXRAMAuto, eXRAMHardware, eXRAMAccessible;
00090 
00091 #endif _FRAMEWORK_H_

Generated on Tue Aug 26 12:26:54 2008 for sonus by  doxygen 1.5.4