00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef IMUSIC_H__
00012 #define IMUSIC_H__
00013
00014 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00015 namespace Audio
00016 {
00017 #endif
00018
00020
00022
00029 class IMusicManager : public IMusicCallback
00030 {
00031 public:
00032
00039 virtual bool Init() = 0;
00045 virtual void Term() = 0;
00052 virtual bool IsInitialized() = 0;
00053
00061 virtual bool LoadScript(std::string sFileName) = 0;
00062
00073 virtual bool PlayTheme(std::string sThemeName) = 0;
00079 virtual void ResetThemeItr() = 0;
00090 virtual bool GetNextTheme(std::string& sThemeName) = 0;
00097 virtual bool RemoveTheme(std::string& sThemeName) = 0;
00098
00106 virtual bool RemoveAll() = 0;
00107 };
00108
00114 inline static IMusicManager* MusicMgr()
00115 { return AudioScriptFactory::GetMusicMgr(); }
00116
00117 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00118 };
00119 #endif
00120
00121
00122 #endif // IMUSIC_H__