mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-07 19:18:19 +02:00

Throwing error on member references with ".." cascade token outside invocations (ie: "ts..mA = 123") Fixed 'Thread.ModuleTLSIndex' error - which caused us TLS lookup failures in Beef DLLs Fixed some hotswap errors Made BeefPerf shut down properly Fixed an 'int literal' FixIntUnknown issue where rhs was System.Object which caused an illegal boxing Fixed COFF::LocateSymbol issues with Win32 and also with linking to static libraries - showed up with hot-linking in fmod when hot-adding a floating point mod Fixed a couple memory leaks Fixed alignment issue in COFF::ParseCompileUnit
61 lines
No EOL
1.6 KiB
C++
61 lines
No EOL
1.6 KiB
C++
#pragma once
|
|
|
|
#include "Common.h"
|
|
|
|
NS_BF_BEGIN;
|
|
|
|
#define MAX_SOURCE_SOUNDS 1024
|
|
#define MAX_CHANNELS 32
|
|
|
|
class BFSoundInstance
|
|
{
|
|
public:
|
|
virtual ~BFSoundInstance() {}
|
|
|
|
virtual void Release() = 0;
|
|
|
|
virtual void SetBaseVolume(float theBaseVolume) = 0;
|
|
virtual void SetBasePan(int theBasePan) = 0;
|
|
|
|
virtual void SetVolume(float theVolume) = 0;
|
|
virtual void SetPan(int thePosition) = 0; //-hundredth db to +hundredth db = left to right
|
|
virtual void AdjustPitch(float theNumSteps) = 0;
|
|
|
|
virtual bool Play(bool looping, bool autoRelease) = 0;
|
|
virtual void Stop() = 0;
|
|
virtual bool IsPlaying() = 0;
|
|
virtual bool IsReleased() = 0;
|
|
virtual float GetVolume() = 0;
|
|
};
|
|
|
|
class BFSoundManager
|
|
{
|
|
public:
|
|
virtual ~BFSoundManager() {}
|
|
|
|
virtual bool Initialized() = 0;
|
|
|
|
virtual bool LoadSound(unsigned int theSfxID, const StringImpl& theFilename) = 0;
|
|
virtual int LoadSound(const StringImpl& theFilename) = 0;
|
|
virtual void ReleaseSound(unsigned int theSfxID) = 0;
|
|
|
|
virtual void SetVolume(float theVolume) = 0;
|
|
virtual bool SetBaseVolume(unsigned int theSfxID, float theBaseVolume) = 0;
|
|
virtual bool SetBasePan(unsigned int theSfxID, int theBasePan) = 0;
|
|
|
|
virtual BFSoundInstance* GetSoundInstance(unsigned int theSfxID) = 0;
|
|
|
|
virtual void ReleaseSounds() = 0;
|
|
virtual void ReleaseChannels() = 0;
|
|
|
|
virtual float GetMasterVolume() = 0;
|
|
virtual void SetMasterVolume(float theVolume) = 0;
|
|
|
|
virtual void Flush() = 0;
|
|
|
|
virtual void StopAllSounds() = 0;
|
|
virtual int GetFreeSoundId() = 0;
|
|
virtual int GetNumSounds() = 0;
|
|
};
|
|
|
|
NS_BF_END; |