src/music/libtimidity.h
author richk
Sat, 14 Jul 2007 19:42:58 +0000
branchNewGRF_ports
changeset 6720 35756db7e577
parent 6398 baaee83f1596
child 10724 68a692eacf22
permissions -rw-r--r--
(svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
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
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
     3
#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
     4
#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
     5
6720
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
     6
#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
     7
6720
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
     8
class MusicDriver_LibTimidity: public MusicDriver {
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
     9
public:
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    10
	/* virtual */ const char *Start(const char * const *param);
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    11
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    12
	/* virtual */ void Stop();
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    13
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    14
	/* virtual */ void PlaySong(const char *filename);
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    15
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    16
	/* virtual */ void StopSong();
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    17
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    18
	/* virtual */ bool IsSongPlaying();
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    19
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    20
	/* virtual */ void SetVolume(byte vol);
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    21
};
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    22
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    23
class FMusicDriver_LibTimidity: public MusicDriverFactory<FMusicDriver_LibTimidity> {
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    24
public:
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    25
	static const int priority = 5;
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    26
	/* virtual */ const char *GetName() { return "libtimidity"; }
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    27
	/* virtual */ const char *GetDescription() { return "LibTimidity MIDI Driver"; }
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    28
	/* virtual */ Driver *CreateInstance() { return new MusicDriver_LibTimidity(); }
35756db7e577 (svn r10560) [NewGRF_ports] -Sync: with trunk r10027-10559
richk
parents: 6398
diff changeset
    29
};
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    30
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents:
diff changeset
    31
#endif /* MUSIC_LIBTIMIDITY_H */