src/music/libtimidity.h
changeset 7666 a5fccd76176a
parent 6398 baaee83f1596
child 7689 011afceb33b5
equal deleted inserted replaced
7665:ded23f6bc34c 7666:a5fccd76176a
     1 /* $Id$ */
     1 /* $Id$ */
     2 
     2 
     3 #ifndef MUSIC_LIBTIMIDITY_H
     3 #ifndef MUSIC_LIBTIMIDITY_H
     4 #define MUSIC_LIBTIMIDITY_H
     4 #define MUSIC_LIBTIMIDITY_H
     5 
     5 
     6 #include "../hal.h"
     6 #include "music_driver.hpp"
     7 
     7 
     8 extern const HalMusicDriver _libtimidity_music_driver;
     8 class MusicDriver_LibTimidity: public MusicDriver {
       
     9 public:
       
    10 	/* virtual */ bool CanProbe() { return true; }
       
    11 
       
    12 	/* virtual */ const char *Start(const char * const *param);
       
    13 
       
    14 	/* virtual */ void Stop();
       
    15 
       
    16 	/* virtual */ void PlaySong(const char *filename);
       
    17 
       
    18 	/* virtual */ void StopSong();
       
    19 
       
    20 	/* virtual */ bool IsSongPlaying();
       
    21 
       
    22 	/* virtual */ void SetVolume(byte vol);
       
    23 };
       
    24 
       
    25 class FMusicDriver_LibTimidity: public MusicDriverFactory<FMusicDriver_LibTimidity> {
       
    26 public:
       
    27 	/* virtual */ const char *GetName() { return "libtimidity"; }
       
    28 	/* virtual */ const char *GetDescription() { return "LibTimidity MIDI Driver"; }
       
    29 	/* virtual */ Driver *CreateInstance() { return new MusicDriver_LibTimidity(); }
       
    30 };
     9 
    31 
    10 #endif /* MUSIC_LIBTIMIDITY_H */
    32 #endif /* MUSIC_LIBTIMIDITY_H */