"L. Spiro Engine"

F:/My Projects/LSEngine/Modules/LSSoundLib/Src/SoundComponents/LSSStaticSoundSource.h

00001 
00017 #ifndef __LSS_STATICSOUNDSOURCE_H__
00018 #define __LSS_STATICSOUNDSOURCE_H__
00019 
00020 #include "../LSSSoundLib.h"
00021 #include "LSSSoundBuffer.h"
00022 #include "LSSSoundSource.h"
00023 
00024 namespace lss {
00025 
00032         class CStaticSoundSource : public CSoundSource {
00033         public :
00034                 // == Various constructors.
00035                 LSE_CALLCTOR                                                                    CStaticSoundSource( LSUINT32 _ui32Id );
00036                 virtual LSE_CALLCTOR                                                    ~CStaticSoundSource();
00037 
00038 
00039                 // == Functions.
00045                 virtual LSS_SOUND_SOURCE LSE_CALL                               GetType() const;
00046 
00052                 LSUINT32 LSE_CALL                                                               GetBufferId() const;
00053 
00064                 virtual LSBOOL LSE_CALL                                                 Play( LSUINT32 _ui32LoopCount = 1 );
00065 
00071                 virtual LSBOOL LSE_CALL                                                 Pause();
00072 
00078                 virtual LSBOOL LSE_CALL                                                 Stop();
00079 
00085                 virtual LSBOOL LSE_CALL                                                 Static() const;
00086 
00092                 virtual LSVOID LSE_CALL                                                 SetBuffer( const CSoundBuffer * _psbBuffer );
00093 
00100                 virtual LSVOID LSE_CALL                                                 Tick( LSUINT64 _ui64TimeSinceLastUpdate );
00101 
00102         protected :
00103                 // == Members.
00107                 const CSoundBuffer *                                                    m_psbBuffer;
00108 
00112                 LSBOOL                                                                                  m_bPlayStateDirty;
00113 
00114 
00115                 // == Functions.
00124                 virtual LSBOOL LSE_CALL                                                 DeviceActivated();
00125 
00129                 virtual LSVOID LSE_CALL                                                 UpdatePlayState();
00130 
00131         private :
00132                 typedef CSoundSource                                                    Parent;
00133         };
00134 
00135 }       // namespace lss
00136 
00137 #endif  // __LSS_STATICSOUNDSOURCE_H__
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator