16 #ifndef __NULL_AUDIO_MANAGER_H__
17 #define __NULL_AUDIO_MANAGER_H__
19 #include "audioManager.h"
20 #include "nullAudioSound.h"
31 virtual bool is_valid();
33 virtual PT(
AudioSound) get_sound(
const string&,
bool positional =
false,
int mode=SM_heuristic);
34 virtual PT(
AudioSound) get_sound(
MovieAudio *sound,
bool positional =
false,
int mode=SM_heuristic);
35 virtual void uncache_sound(
const string&);
36 virtual void clear_cache();
37 virtual void set_cache_limit(
unsigned int);
38 virtual unsigned int get_cache_limit()
const;
40 virtual void set_volume(PN_stdfloat);
41 virtual PN_stdfloat get_volume()
const;
43 virtual void set_play_rate(PN_stdfloat);
44 virtual PN_stdfloat get_play_rate()
const;
46 virtual void set_active(
bool);
47 virtual bool get_active()
const;
49 virtual void set_concurrent_sound_limit(
unsigned int limit);
50 virtual unsigned int get_concurrent_sound_limit()
const;
52 virtual void reduce_sounds_playing_to(
unsigned int count);
54 virtual void stop_all_sounds();
56 virtual void audio_3d_set_listener_attributes(PN_stdfloat px, PN_stdfloat py, PN_stdfloat pz,
57 PN_stdfloat vx, PN_stdfloat vy, PN_stdfloat vz,
58 PN_stdfloat fx, PN_stdfloat fy, PN_stdfloat fz,
59 PN_stdfloat ux, PN_stdfloat uy, PN_stdfloat uz);
60 virtual void audio_3d_get_listener_attributes(PN_stdfloat *px, PN_stdfloat *py, PN_stdfloat *pz,
61 PN_stdfloat *vx, PN_stdfloat *vy, PN_stdfloat *vz,
62 PN_stdfloat *fx, PN_stdfloat *fy, PN_stdfloat *fz,
63 PN_stdfloat *ux, PN_stdfloat *uy, PN_stdfloat *uz);
65 virtual void audio_3d_set_distance_factor(PN_stdfloat factor);
66 virtual PN_stdfloat audio_3d_get_distance_factor()
const;
68 virtual void audio_3d_set_doppler_factor(PN_stdfloat factor);
69 virtual PN_stdfloat audio_3d_get_doppler_factor()
const;
71 virtual void audio_3d_set_drop_off_factor(PN_stdfloat factor);
72 virtual PN_stdfloat audio_3d_get_drop_off_factor()
const;
79 static void init_type() {
80 AudioManager::init_type();
81 register_type(_type_handle,
"NullAudioManager",
82 AudioManager::get_class_type());
85 return get_class_type();
87 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
TypeHandle is the identifier used to differentiate C++ class types.
A MovieAudio is actually any source that provides a sequence of audio samples.