MusicFlex Class Reference

#include <MusicFlex.h>

Inheritance diagram for MusicFlex:

Pentagram::Archive List of all members.

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

Detailed Description

Definition at line 26 of file MusicFlex.h.


Constructor & Destructor Documentation

MusicFlex::MusicFlex ( IDataSource *  ds  ) 

Definition at line 28 of file MusicFlex.cpp.

References info, loadSongInfo(), and songs.

MusicFlex::~MusicFlex (  ) 

Definition at line 35 of file MusicFlex.cpp.

References info, and songs.


Member Function Documentation

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().

const SongInfo* MusicFlex::getSongInfo ( uint32  index  )  const [inline]

Get song info.

Definition at line 54 of file MusicFlex.h.

References info.

Referenced by MusicProcess::playMusic_internal().

XMidiFile* MusicFlex::getXMidi ( uint32  index  )  [inline]

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.


Member Data Documentation

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().


The documentation for this class was generated from the following files:
Generated on Fri Jul 27 22:29:39 2007 for pentagram by  doxygen 1.4.7