diff --git a/src/driver.h b/src/driver.h --- a/src/driver.h +++ b/src/driver.h @@ -36,6 +36,8 @@ public: DT_VIDEO, DT_END, }; + + virtual const char *GetName() const = 0; }; DECLARE_POSTFIX_INCREMENT(Driver::Type); diff --git a/src/music/allegro_m.h b/src/music/allegro_m.h --- a/src/music/allegro_m.h +++ b/src/music/allegro_m.h @@ -27,6 +27,7 @@ public: /* virtual */ bool IsSongPlaying(); /* virtual */ void SetVolume(byte vol); + /* virtual */ const char *GetName() const { return "allegro"; } }; class FMusicDriver_Allegro: public MusicDriverFactory { diff --git a/src/music/bemidi.h b/src/music/bemidi.h --- a/src/music/bemidi.h +++ b/src/music/bemidi.h @@ -27,6 +27,7 @@ public: /* virtual */ bool IsSongPlaying(); /* virtual */ void SetVolume(byte vol); + /* virtual */ const char *GetName() const { return "bemidi"; } }; class FMusicDriver_BeMidi: public MusicDriverFactory { diff --git a/src/music/dmusic.h b/src/music/dmusic.h --- a/src/music/dmusic.h +++ b/src/music/dmusic.h @@ -27,6 +27,7 @@ public: /* virtual */ bool IsSongPlaying(); /* virtual */ void SetVolume(byte vol); + /* virtual */ const char *GetName() const { return "dmusic"; } }; class FMusicDriver_DMusic: public MusicDriverFactory { diff --git a/src/music/extmidi.h b/src/music/extmidi.h --- a/src/music/extmidi.h +++ b/src/music/extmidi.h @@ -35,6 +35,7 @@ public: /* virtual */ bool IsSongPlaying(); /* virtual */ void SetVolume(byte vol); + /* virtual */ const char *GetName() const { return "extmidi"; } }; class FMusicDriver_ExtMidi: public MusicDriverFactory { diff --git a/src/music/libtimidity.h b/src/music/libtimidity.h --- a/src/music/libtimidity.h +++ b/src/music/libtimidity.h @@ -27,6 +27,7 @@ public: /* virtual */ bool IsSongPlaying(); /* virtual */ void SetVolume(byte vol); + /* virtual */ const char *GetName() const { return "libtimidity"; } }; class FMusicDriver_LibTimidity: public MusicDriverFactory { diff --git a/src/music/null_m.h b/src/music/null_m.h --- a/src/music/null_m.h +++ b/src/music/null_m.h @@ -27,6 +27,7 @@ public: /* virtual */ bool IsSongPlaying() { return true; } /* virtual */ void SetVolume(byte vol) { } + /* virtual */ const char *GetName() const { return "null"; } }; class FMusicDriver_Null: public MusicDriverFactory { diff --git a/src/music/os2_m.h b/src/music/os2_m.h --- a/src/music/os2_m.h +++ b/src/music/os2_m.h @@ -27,6 +27,7 @@ public: /* virtual */ bool IsSongPlaying(); /* virtual */ void SetVolume(byte vol); + /* virtual */ const char *GetName() const { return "os2"; } }; class FMusicDriver_OS2: public MusicDriverFactory { diff --git a/src/music/qtmidi.h b/src/music/qtmidi.h --- a/src/music/qtmidi.h +++ b/src/music/qtmidi.h @@ -27,6 +27,7 @@ public: /* virtual */ bool IsSongPlaying(); /* virtual */ void SetVolume(byte vol); + /* virtual */ const char *GetName() const { return "qt"; } }; class FMusicDriver_QtMidi: public MusicDriverFactory { diff --git a/src/music/win32_m.h b/src/music/win32_m.h --- a/src/music/win32_m.h +++ b/src/music/win32_m.h @@ -27,6 +27,7 @@ public: /* virtual */ bool IsSongPlaying(); /* virtual */ void SetVolume(byte vol); + /* virtual */ const char *GetName() const { return "win32"; } }; class FMusicDriver_Win32: public MusicDriverFactory { diff --git a/src/sound/allegro_s.h b/src/sound/allegro_s.h --- a/src/sound/allegro_s.h +++ b/src/sound/allegro_s.h @@ -21,6 +21,7 @@ public: /* virtual */ void Stop(); /* virtual */ void MainLoop(); + /* virtual */ const char *GetName() const { return "allegro"; } }; class FSoundDriver_Allegro: public SoundDriverFactory { diff --git a/src/sound/cocoa_s.h b/src/sound/cocoa_s.h --- a/src/sound/cocoa_s.h +++ b/src/sound/cocoa_s.h @@ -19,6 +19,7 @@ public: /* virtual */ const char *Start(const char * const *param); /* virtual */ void Stop(); + /* virtual */ const char *GetName() const { return "cocoa"; } }; class FSoundDriver_Cocoa: public SoundDriverFactory { diff --git a/src/sound/null_s.h b/src/sound/null_s.h --- a/src/sound/null_s.h +++ b/src/sound/null_s.h @@ -19,6 +19,7 @@ public: /* virtual */ const char *Start(const char * const *param) { return NULL; } /* virtual */ void Stop() { } + /* virtual */ const char *GetName() const { return "null"; } }; class FSoundDriver_Null: public SoundDriverFactory { diff --git a/src/sound/sdl_s.h b/src/sound/sdl_s.h --- a/src/sound/sdl_s.h +++ b/src/sound/sdl_s.h @@ -19,6 +19,7 @@ public: /* virtual */ const char *Start(const char * const *param); /* virtual */ void Stop(); + /* virtual */ const char *GetName() const { return "sdl"; } }; class FSoundDriver_SDL: public SoundDriverFactory { diff --git a/src/sound/win32_s.h b/src/sound/win32_s.h --- a/src/sound/win32_s.h +++ b/src/sound/win32_s.h @@ -19,6 +19,7 @@ public: /* virtual */ const char *Start(const char * const *param); /* virtual */ void Stop(); + /* virtual */ const char *GetName() const { return "win32"; } }; class FSoundDriver_Win32: public SoundDriverFactory { diff --git a/src/video/allegro_v.h b/src/video/allegro_v.h --- a/src/video/allegro_v.h +++ b/src/video/allegro_v.h @@ -27,6 +27,7 @@ public: /* virtual */ bool ChangeResolution(int w, int h); /* virtual */ bool ToggleFullscreen(bool fullscreen); + /* virtual */ const char *GetName() const { return "allegro"; } }; class FVideoDriver_Allegro: public VideoDriverFactory { diff --git a/src/video/dedicated_v.h b/src/video/dedicated_v.h --- a/src/video/dedicated_v.h +++ b/src/video/dedicated_v.h @@ -27,6 +27,7 @@ public: /* virtual */ bool ChangeResolution(int w, int h); /* virtual */ bool ToggleFullscreen(bool fullscreen); + /* virtual */ const char *GetName() const { return "dedicated"; } }; class FVideoDriver_Dedicated: public VideoDriverFactory { diff --git a/src/video/null_v.h b/src/video/null_v.h --- a/src/video/null_v.h +++ b/src/video/null_v.h @@ -30,6 +30,7 @@ public: /* virtual */ bool ChangeResolution(int w, int h); /* virtual */ bool ToggleFullscreen(bool fullscreen); + /* virtual */ const char *GetName() const { return "null"; } }; class FVideoDriver_Null: public VideoDriverFactory { diff --git a/src/video/sdl_v.h b/src/video/sdl_v.h --- a/src/video/sdl_v.h +++ b/src/video/sdl_v.h @@ -27,6 +27,7 @@ public: /* virtual */ bool ChangeResolution(int w, int h); /* virtual */ bool ToggleFullscreen(bool fullscreen); + /* virtual */ const char *GetName() const { return "sdl"; } }; class FVideoDriver_SDL: public VideoDriverFactory { diff --git a/src/video/win32_v.h b/src/video/win32_v.h --- a/src/video/win32_v.h +++ b/src/video/win32_v.h @@ -27,6 +27,7 @@ public: /* virtual */ bool ChangeResolution(int w, int h); /* virtual */ bool ToggleFullscreen(bool fullscreen); + /* virtual */ const char *GetName() const { return "win32"; } }; class FVideoDriver_Win32: public VideoDriverFactory {