#include <MusicFlex.h>
Inheritance diagram for MusicFlex:
Public Member Functions | |
ENABLE_RUNTIME_CLASSTYPE () | |
MusicFlex (IDataSource *ds) | |
~MusicFlex () | |
XMidiFile * | getXMidi (uint32 index) |
const SongInfo * | getSongInfo (uint32 index) const |
IDataSource * | getAdlibTimbres () |
virtual void | cache (uint32 index) |
virtual void | uncache (uint32 index) |
virtual bool | isCached (uint32 index) |
Private Member Functions | |
void | loadSongInfo () |
Private Attributes | |
SongInfo * | info [128] |
XMidiFile ** | songs |
Classes | |
struct | SongInfo |
Definition at line 26 of file MusicFlex.h.
MusicFlex::MusicFlex | ( | IDataSource * | ds | ) |
MusicFlex::~MusicFlex | ( | ) |
void MusicFlex::cache | ( | uint32 | index | ) | [virtual] |
Cache a single object.
Implements Pentagram::Archive.
Definition at line 63 of file MusicFlex.cpp.
References Pentagram::Archive::count, Pentagram::Archive::getRawObject(), songs, and x.
MusicFlex::ENABLE_RUNTIME_CLASSTYPE | ( | ) |
Reimplemented from Pentagram::Archive.
IDataSource * MusicFlex::getAdlibTimbres | ( | ) |
Get the Adlib Timbres (index 259).
Definition at line 109 of file MusicFlex.cpp.
References Pentagram::Archive::getRawObject().
Referenced by FMOplMidiDriver::open().
Get song info.
Definition at line 54 of file MusicFlex.h.
References info.
Referenced by MusicProcess::playMusic_internal().
Get an xmidi.
Definition at line 46 of file MusicFlex.h.
References Pentagram::Archive::cache(), Pentagram::Archive::count, and songs.
Referenced by TimidityMidiDriver::open(), MusicProcess::playMusic_internal(), and MusicProcess::run().
bool MusicFlex::isCached | ( | uint32 | index | ) | [virtual] |
Check if an object is cached.
Implements Pentagram::Archive.
Definition at line 101 of file MusicFlex.cpp.
References Pentagram::Archive::count, and songs.
void MusicFlex::loadSongInfo | ( | ) | [private] |
Load the song info.
Definition at line 116 of file MusicFlex.cpp.
References Pentagram::Archive::getRawObject(), info, line, MusicFlex::SongInfo::loop_jump, MusicFlex::SongInfo::num_measures, perr, IDataSource::readline(), and MusicFlex::SongInfo::transitions.
Referenced by MusicFlex().
void MusicFlex::uncache | ( | uint32 | index | ) | [virtual] |
Uncache a single object Potentially dangerous. See uncache()
Implements Pentagram::Archive.
Definition at line 92 of file MusicFlex.cpp.
References Pentagram::Archive::count, and songs.
SongInfo* MusicFlex::info[128] [private] |
Definition at line 68 of file MusicFlex.h.
Referenced by getSongInfo(), loadSongInfo(), MusicFlex(), and ~MusicFlex().
XMidiFile** MusicFlex::songs [private] |
Definition at line 69 of file MusicFlex.h.
Referenced by cache(), getXMidi(), isCached(), MusicFlex(), uncache(), and ~MusicFlex().