(svn r10444) -Codechange: switch to c++ classes and inheritance for sound/music/video drivers, using self-registration based on the blitter-model.

This commit is contained in:
peter1138
2007-07-05 12:23:54 +00:00
parent 7884a07b43
commit 5e85e8c5e0
48 changed files with 883 additions and 557 deletions

View File

@@ -3,8 +3,30 @@
#ifndef MUSIC_NULL_H
#define MUSIC_NULL_H
#include "../hal.h"
#include "music_driver.hpp"
extern const HalMusicDriver _null_music_driver;
class MusicDriver_Null: public MusicDriver {
public:
/* virtual */ bool CanProbe() { return false; }
/* virtual */ const char *Start(const char * const *param) { return NULL; }
/* virtual */ void Stop() { }
/* virtual */ void PlaySong(const char *filename) { }
/* virtual */ void StopSong() { }
/* virtual */ bool IsSongPlaying() { return true; }
/* virtual */ void SetVolume(byte vol) { }
};
class FMusicDriver_Null: public MusicDriverFactory<FMusicDriver_Null> {
public:
/* virtual */ const char *GetName() { return "null"; }
/* virtual */ const char *GetDescription() { return "Null Music Driver"; }
/* virtual */ Driver *CreateInstance() { return new MusicDriver_Null(); }
};
#endif /* MUSIC_NULL_H */