Changeset 4196 in orxonox.OLD for orxonox/branches/openAL/src/lib/sound/sound_engine.h
- Timestamp:
- May 16, 2005, 3:16:33 PM (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
orxonox/branches/openAL/src/lib/sound/sound_engine.h
r4195 r4196 9 9 10 10 #include "base_object.h" 11 #include "alincl.h" 11 12 12 13 // FORWARD DEFINITION 14 class PNode; 15 template<class T> class tList; 13 16 14 //! A Class that handles audio via the openAudioLibrary 17 18 //! A class that represents a datastructure to play Sounds. 19 class SoundBuffer 20 { 21 public: 22 SoundBuffer(const char* fileName); 23 ~SoundBuffer(void); 24 25 private: 26 ALuint bufferID; //!< The address of the Buffer. 27 28 ALsizei size; //!< The size of the Buffer. 29 ALboolean loop; //!< loop information. 30 }; 31 32 //! A class that represents a SoundSource 33 class SoundSource 34 { 35 public: 36 SoundSource(SoundBuffer* buffer, PNode* sourceNode = NULL); 37 ~SoundSource(void); 38 39 /** \retruns The ID of the Source */ 40 inline ALuint getID(void) { return this->sourceID; } 41 /** \returns the SourceNode of this Source */ 42 inline PNode* getNode(void) { return this->sourceNode;} 43 44 private: 45 ALuint sourceID; //!< The ID of the Source 46 SoundBuffer* buffer; //!< The buffer to play in this source. 47 PNode* sourceNode; //!< The SourceNode represente the position/velocity... of this source. 48 }; 49 50 51 52 //! A class that handles audio via the openAudioLibrary 15 53 class SoundEngine : public BaseObject { 16 54 … … 19 57 virtual ~SoundEngine(void); 20 58 59 void setListener(PNode* listener); 60 61 void addBuffer(SoundBuffer* buffer); 62 void removeBuffer(SoundBuffer* buffer); 63 void addSource(SoundSource* source); 64 void removeSource(SoundSource* source); 65 66 67 void update(void); 68 21 69 private: 22 70 SoundEngine(void); 23 71 static SoundEngine* singletonRef; 72 73 bool initAudio(void); 74 75 PNode* listener; //!< The listener of the Scene 76 tList<SoundBuffer>* bufferList; //!< A list of buffers 77 tList<SoundSource>* sourceList; //!< A list for all the sources in the scene. 78 24 79 }; 25 80
Note: See TracChangeset
for help on using the changeset viewer.