History: Another FMOD SoundManager
Source of version: 2
Copy to clipboard
{CODE(wrap="1", colors="c++")}
#pragma once
class ISoundManager{
public:
virtual ~ISoundManager(){}
virtual void Load2DSoundsFromFile(const Ogre::String &fileName)=0;
virtual void Load3DSoundsFromFile(const Ogre::String &fileName)=0;
virtual void UnloadSoundsFromFile(const Ogre::String &fileName)=0;
virtual void Load2DPlaylistFromFile(const Ogre::String &fileName)=0;
virtual void System3DAttributes(const Ogre::Vector3 &position, const Ogre::Vector3 &velocity)=0;
virtual void System3DAttributes(const Ogre::Vector3 &position, const Ogre::Vector3 &velocity, const Ogre::Vector3 &forward)=0;
virtual void System3DAttributes(const Ogre::Vector3 &position, const Ogre::Vector3 &velocity, const Ogre::Vector3 &forward, const Ogre::Vector3 &up)=0;
virtual void System3DSettings(const Ogre::Real &dopplerScale, const Ogre::Real &distanceFactor, const Ogre::Real rolloffScale)=0;
virtual void SoundGroupMaxAudible(const Ogre::String &name, const int &maxAudible)=0;
virtual void SoundGroupMuteFadeSpeed(const Ogre::String &name, const Ogre::Real &speed)=0;
virtual void SoundGroupStop(const Ogre::String &name)=0;
virtual void SoundGroupStopAll()=0;
virtual void SoundGroupEmpty(const Ogre::String &name)=0;
virtual void SoundGroupEmptyAll()=0;
virtual void SoundGroupDestroy(const Ogre::String &name)=0;
virtual void SoundGroupDestroyAll()=0;
virtual void SoundGroupVolume(const Ogre::String &name, const Ogre::Real &volume)=0;
virtual Ogre::Real GetSoundGroupVolume(const Ogre::String &name)=0;
virtual void Sound2DLoopCount(const Ogre::String &name, const int &loopCount)=0;
virtual void Sound3DLoopCount(const Ogre::String &name, const int &loopCount)=0;
virtual void Sound3DConeSettings(const Ogre::String &name, const Ogre::Real &insideAngle, const Ogre::Real &outsideAngle, const Ogre::Real &outsideVolume)=0;
virtual void Sound3DMinMaxDistance(const Ogre::String &name, const Ogre::Real &minDistance, const Ogre::Real &maxDistance)=0;
virtual void ChannelGroupCreate(const Ogre::String &name)=0;
virtual void ChannelGroupPause(const Ogre::String &name, const bool &isPaused)=0;
virtual void ChannelGroupPauseAll(const bool &isPaused)=0;
virtual void ChannelGroupMute(const Ogre::String &name, const bool &isMuted)=0;
virtual void ChannelGroupMuteAll(const bool &isMuted)=0;
virtual void ChannelGroupVolume(const Ogre::String &name, const Ogre::Real &volume)=0;
virtual void ChannelGroupVolumeAll(const Ogre::Real &volume)=0;
virtual void ChannelGroupStop(const Ogre::String &name)=0;
virtual void ChannelGroupStopAll()=0;
virtual void ChannelGroupDestroy(const Ogre::String &name)=0;
virtual void ChannelGroupDestroyAll()=0;
virtual void ChannelPause(const int &index, const bool &isPaused)=0;
virtual void ChannelMute(const int &index, const bool &isMuted)=0;
virtual void ChannelVolume(const int &index, const Ogre::Real &volume)=0;
virtual void ChannelLoop(const int &index, const int &loopCount)=0;
virtual void ChannelStop(const int &index)=0;
virtual void Channel3DAttributes(const int &index, const Ogre::Vector3 &position, const Ogre::Vector3 &velocity)=0;
virtual void Channel3DConeOrientation(const int &index, const Ogre::Vector3 &orientation)=0;
virtual void Channel3DConeSettings(const int &index, const Ogre::Real &insideAngle, const Ogre::Real &outsideAngle, const Ogre::Real &outsideVolume)=0;
virtual void Channel3DDopplerLevel(const int &index, const Ogre::Real &level)=0;
virtual void Channel3DMinMaxDistance(const int &index, const Ogre::Real &minDistance, const Ogre::Real &maxDistance)=0;
virtual void PlaylistPlay(const Ogre::String &playlistName)=0;
virtual void PlaylistPlayAll()=0;
virtual void PlaylistSkip(const Ogre::String &playlistName)=0;
virtual void PlaylistPause(const Ogre::String &playlistName)=0;
virtual void PlaylistPauseAll()=0;
virtual void PlaylistResume(const Ogre::String &playlistName)=0;
virtual void PlaylistResumeAll()=0;
virtual void PlaylistStop(const Ogre::String &playlistName)=0;
virtual void PlatlistStopAll()=0;
virtual void PlaylistDestroy(const Ogre::String &playlistName)=0;
virtual void PlaylistDestroyAll()=0;
virtual int Play2DSound(const Ogre::String &soundName, const Ogre::String &channelGroupName)=0;
virtual int Play2DSound(const Ogre::String &soundName, const Ogre::String &channelGroupName, const int &loopCount)=0;
virtual int Play3DSound(const Ogre::String &soundName, const Ogre::String &channelGroupName, const Ogre::Vector3 &position)=0;
virtual int Play3DSound(const Ogre::String &soundName, const Ogre::String &channelGroupName, const Ogre::Vector3 &position, const int &loopCount)=0;
virtual int Play3DSound(const Ogre::String &soundName, const Ogre::String &channelGroupName, const Ogre::Vector3 &position, const Ogre::Vector3 &velocity, const Ogre::Vector3 &forward)=0;
virtual int Play3DSound(const Ogre::String &soundName, const Ogre::String &channelGroupName, const Ogre::Vector3 &position, const Ogre::Vector3 &velocity, const Ogre::Vector3 &forward, const int &loopCount)=0;
};
{CODE}