bemidi.cpp
Go to the documentation of this file.00001
00002
00005 #include "../stdafx.h"
00006 #include "../openttd.h"
00007 #include "bemidi.h"
00008
00009
00010 #include <MidiSynthFile.h>
00011
00012 static BMidiSynthFile midiSynthFile;
00013
00014 static FMusicDriver_BeMidi iFMusicDriver_BeMidi;
00015
00016 const char *MusicDriver_BeMidi::Start(const char * const *parm)
00017 {
00018 return NULL;
00019 }
00020
00021 void MusicDriver_BeMidi::Stop()
00022 {
00023 midiSynthFile.UnloadFile();
00024 }
00025
00026 void MusicDriver_BeMidi::PlaySong(const char *filename)
00027 {
00028 bemidi_stop();
00029 entry_ref midiRef;
00030 get_ref_for_path(filename, &midiRef);
00031 midiSynthFile.LoadFile(&midiRef);
00032 midiSynthFile.Start();
00033 }
00034
00035 void MusicDriver_BeMidi::StopSong()
00036 {
00037 midiSynthFile.UnloadFile();
00038 }
00039
00040 bool MusicDriver_BeMidi::IsSongPlaying()
00041 {
00042 return !midiSynthFile.IsFinished();
00043 }
00044
00045 void MusicDriver_BeMidi::SetVolume(byte vol)
00046 {
00047 fprintf(stderr, "BeMidi: Set volume not implemented\n");
00048 }