src/music/libtimidity.h
author truebrain
Fri, 18 Jul 2008 01:00:03 +0000
branchnoai
changeset 11166 17960948c3af
parent 10455 22c441f5adf9
permissions -rw-r--r--
(svn r13724) [NoAI] -Fix r13723: in this modern world with all those checks and warnings GCC can give when ever I not ask him to, it fails to see the simplest of all, 'if (cargo_id == cargo_id)'.. makes you wonder, doesn't it? Well, such is life, wondering wondering wandering .. Status Quo, Yeah! Oh yeah, what was I doing ... ah, yes: don't compare one variable with itself, it is always true.. Obiwan by Yexo. (Yexo)
6398
baaee83f1596 (svn r8805) -Codechange (r8757): DO set eol-style and keywords on new files...
Darkvater
parents: 6360
diff changeset
     1
/* $Id$ */
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     2
10455
22c441f5adf9 (svn r12997) [NoAI] -Sync: with trunk r12895:12996.
rubidium
parents: 9641
diff changeset
     3
/** @file libtimidity.h Base for LibTimidity music playback. */
22c441f5adf9 (svn r12997) [NoAI] -Sync: with trunk r12895:12996.
rubidium
parents: 9641
diff changeset
     4
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     5
#ifndef MUSIC_LIBTIMIDITY_H
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     6
#define MUSIC_LIBTIMIDITY_H
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     7
9631
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
     8
#include "music_driver.hpp"
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     9
9631
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    10
class MusicDriver_LibTimidity: public MusicDriver {
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    11
public:
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    12
	/* virtual */ const char *Start(const char * const *param);
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    13
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    14
	/* virtual */ void Stop();
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    15
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    16
	/* virtual */ void PlaySong(const char *filename);
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    17
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    18
	/* virtual */ void StopSong();
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    19
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    20
	/* virtual */ bool IsSongPlaying();
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    21
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    22
	/* virtual */ void SetVolume(byte vol);
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    23
};
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    24
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    25
class FMusicDriver_LibTimidity: public MusicDriverFactory<FMusicDriver_LibTimidity> {
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    26
public:
9641
855e32c08c9b (svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents: 9631
diff changeset
    27
	static const int priority = 5;
9631
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    28
	/* virtual */ const char *GetName() { return "libtimidity"; }
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    29
	/* virtual */ const char *GetDescription() { return "LibTimidity MIDI Driver"; }
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    30
	/* virtual */ Driver *CreateInstance() { return new MusicDriver_LibTimidity(); }
8a2d1c2ceb88 (svn r10461) [NoAI] -Sync with trunk r10349:r10460.
rubidium
parents: 6398
diff changeset
    31
};
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    32
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    33
#endif /* MUSIC_LIBTIMIDITY_H */