14#ifndef MILESAUDIOSEQUENCE_H
15#define MILESAUDIOSEQUENCE_H
29class EXPCL_MILES_AUDIO MilesAudioSequence :
public MilesAudioSound {
31 MilesAudioSequence(MilesAudioManager *manager,
32 MilesAudioManager::SoundData *sd,
33 const std::string &file_name);
36 virtual ~MilesAudioSequence();
41 virtual PN_stdfloat get_time()
const;
43 virtual void set_volume(PN_stdfloat volume=1.0f);
44 virtual void set_balance(PN_stdfloat balance_right=0.0f);
45 virtual void set_play_rate(PN_stdfloat play_rate=1.0f);
47 virtual PN_stdfloat length()
const;
49 virtual AudioSound::SoundStatus status()
const;
51 virtual void cleanup();
55 static void AILCALLBACK finish_callback(HSEQUENCE sequence);
56 void do_set_time(PN_stdfloat time);
57 void determine_length();
59 PT(MilesAudioManager::SoundData) _sd;
61 size_t _sequence_index;
67 static void init_type() {
68 MilesAudioSound::init_type();
70 MilesAudioSound::get_class_type());
73 return get_class_type();
75 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
80 friend class GlobalMilesManager;
81 friend class MilesAudioManager;
TypeHandle is the identifier used to differentiate C++ class types.
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.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...