41#ifndef INCLUDED_DISTI_SOUND_H
42#define INCLUDED_DISTI_SOUND_H
68 DISTI_EXPORT
void Play(
int which );
75 DISTI_EXPORT
void Play(
int which,
float volumeOrDistance );
82 DISTI_EXPORT
void LoadSound(
const char* fn,
int index );
89 DISTI_EXPORT
void LoadSounds(
const char* firstArg, ... );
108 class ISoundSystemImpl
111 DISTI_EXPORT
virtual bool IsValid()
const = 0;
112 DISTI_EXPORT
virtual void LoadSound(
const char* fileName,
int index ) = 0;
113 DISTI_EXPORT
virtual void ClearSound(
int index ) = 0;
116 DISTI_EXPORT
virtual void Play(
int index ) = 0;
117 DISTI_EXPORT
virtual void Play(
int index,
float volume ) = 0;
119 DISTI_EXPORT
virtual ~ISoundSystemImpl() {}
122 DISTI_EXPORT ISoundSystemImpl() {}
135 ScopedPtr<ISoundSystemImpl> _impl;
139 static ISoundSystemImpl* CreateSoundSystemImpl(
int maxSounds );
140 static const char*
const s_errorMsg;
SoundSystem(int maxSounds)
float GetMasterVolume() const
void LoadSounds(const char *firstArg,...)
void SetMasterVolume(float volume)
void ClearSound(int index)
void LoadSound(const char *fn, int index)
Macros and helper code to determine what subset of C++11/14/17 is available.
#define DISTI_SPECIAL_MEM_FUN_DELETE
Macro to wrap function deletion, removed on compilers that don't support it.
Definition: gls_cpp_lang_support.h:235
Force inclusion of the DirectShow library.
Definition: bmpimage.h:47
A smart pointer with unique ownership – poor man's std::unique_ptr.