14 #ifndef GLOBALMILESMANAGER_H 15 #define GLOBALMILESMANAGER_H 18 #ifdef HAVE_RAD_MSS //[ 34 class MilesAudioSample;
35 class MilesAudioSequence;
42 class EXPCL_MILES_AUDIO GlobalMilesManager {
47 void add_manager(MilesAudioManager *manager);
48 void remove_manager(MilesAudioManager *manager);
50 INLINE
bool is_open()
const;
52 bool get_sample(HSAMPLE &sample,
size_t &index, MilesAudioSample *sound);
53 void release_sample(
size_t index, MilesAudioSample *sound);
54 INLINE
int get_num_samples()
const;
56 bool get_sequence(HSEQUENCE &sequence,
size_t &index, MilesAudioSequence *sound);
57 void release_sequence(
size_t index, MilesAudioSequence *sound);
58 INLINE
int get_num_sequences()
const;
60 void force_midi_reset();
62 static GlobalMilesManager *get_global_ptr();
65 HDIGDRIVER _digital_driver;
66 HMDIDRIVER _midi_driver;
69 HDLSDEVICE _dls_device;
71 vector_uchar _dls_data;
77 static U32 AILCALLBACK open_callback(
char const *filename, UINTa *file_handle);
78 static void AILCALLBACK close_callback(UINTa file_handle);
79 static S32 AILCALLBACK seek_callback(UINTa file_handle, S32 offset, U32 type);
80 static U32 AILCALLBACK read_callback(UINTa file_handle,
void *buffer, U32 bytes);
93 MilesAudioSample *_sound;
103 MilesAudioSequence *_sound;
107 Sequences _sequences;
110 static GlobalMilesManager *_global_ptr;
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This is our own Panda specialization on the default STL vector.
This is our own Panda specialization on the default STL set.
This is a standard, non-reentrant mutex, similar to the Mutex class.