25 #ifndef __I6ENGINE_MODULES_AUDIOMANAGER_H__
26 #define __I6ENGINE_MODULES_AUDIOMANAGER_H__
44 class AudioController;
71 ALCcontext * _context;
73 std::map<int64_t, boost::shared_ptr<AudioNode>> _nodes;
82 std::vector<std::tuple<ALuint, ALuint, std::function<void(bool)>,
api::audio::SoundHandle, std::string>> _sounds;
84 std::map<std::string, boost::shared_ptr<WavFile>> _cachedSounds;
104 void playSound(api::audio::SoundHandle handle,
const std::string & file,
double maxDistance,
const Vec3 & pos,
const Vec3 & dir,
bool cacheable,
const std::string & category,
const std::function<
void(
bool)> & callback = [](
bool) {});
Class describing a 3d rotation.
boost::shared_ptr< Message > Ptr
struct i6e::modules::WavFile WavFile
parsed wave file
Implements 3-dimensional vectors.
AudioManager()
constructor
~AudioManager()
destructor
#define ASSERT_THREAD_SAFETY_HEADER
void Tick()
ticks the audio subsystem
Handles the incoming messages on the audio channel and calls the corresponding methods.