00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef VRS_SOUND_ENGINE_AL_H
00019 #define VRS_SOUND_ENGINE_AL_H
00020
00021
00022
00023
00024 #include <vrs/openal/config.h>
00025 #include <vrs/openal/sourceal.h>
00026
00027
00028
00029
00030 #include <vrs/container/iterator.h>
00031
00032
00033
00034
00035 #include <string>
00036
00037
00038 namespace VRS
00039 {
00040 namespace SOUND
00041 {
00042 class VRS_OPENAL_API EngineAL
00043 {
00044 public:
00045
00046 enum Loader
00047 {
00048 LOADER_BUFFER = ALUT_LOADER_BUFFER,
00049 LOADER_MEMORY = ALUT_LOADER_MEMORY
00050
00051 };
00052
00053
00056 static std::string getALVersion(void);
00057
00059 static std::string getALRenderer(void);
00060
00062 static std::string getALVendor(void);
00063
00065 static std::string getALExtensions(void);
00066
00068 static std::string getALUTMajorVersion(void);
00069
00071 static std::string getALUTMinorVersion(void);
00072
00074 static std::string getMIMETypes(Loader loader);
00075
00077 static void syncronizedPlay(SO<Iterator<SO<SourceAL> > > sources);
00078
00080 static void syncronizedStop(SO<Iterator<SO<SourceAL> > > sources);
00081
00083 static void syncronizedPaused(SO<Iterator<SO<SourceAL> > > sources);
00084
00086 static void syncronizedRewind(SO<Iterator<SO<SourceAL> > > sources);
00087
00096 static bool sleep(float duration);
00097
00098 };
00099
00100 };
00101
00102 };
00103
00104 #endif //VRS_SOUND_ENGINE_AL_H