OpenTTD Source 20260917-master-gec444f7315
MusicDriver_FluidSynth Class Reference

Music driver making use of FluidSynth. More...

#include <fluidsynth.h>

Inheritance diagram for MusicDriver_FluidSynth:
MusicDriver Driver

Public Member Functions

std::optional< std::string_view > Start (const StringList &param) override
 Start this driver.
void Stop () override
 Stop this driver.
void PlaySong (const MusicSongInfo &song) override
 Play a particular song.
void StopSong () override
 Stop playing the current song.
bool IsSongPlaying () override
 Are we currently playing a song?
void SetVolume (uint8_t vol) override
 Set the volume, if possible.
std::string_view GetName () const override
 Get the name of this driver.
Public Member Functions inherited from Driver
virtual ~Driver ()=default
 Ensure the destructor of the sub classes are called as well.

Additional Inherited Members

Public Types inherited from Driver
enum class  Type : uint8_t {
  Begin = 0 , Music = 0 , Sound , Video ,
  End
}
 The type of driver. More...
Static Public Member Functions inherited from MusicDriver
static MusicDriver * GetInstance ()
 Get the currently active instance of the music driver.

Detailed Description

Music driver making use of FluidSynth.

Definition at line 16 of file fluidsynth.h.

Member Function Documentation

◆ GetName()

std::string_view MusicDriver_FluidSynth::GetName ( ) const
inlineoverridevirtual

Get the name of this driver.

Returns
The name of the driver.

Implements Driver.

Definition at line 29 of file fluidsynth.h.

◆ IsSongPlaying()

bool MusicDriver_FluidSynth::IsSongPlaying ( )
overridevirtual

Are we currently playing a song?

Returns
True if a song is being played.

Implements MusicDriver.

Definition at line 216 of file fluidsynth.cpp.

References _midi, and lock.

◆ PlaySong()

void MusicDriver_FluidSynth::PlaySong ( const MusicSongInfo & song)
overridevirtual

Play a particular song.

Parameters
songThe information for the song to play.

Implements MusicDriver.

Definition at line 170 of file fluidsynth.cpp.

References _midi, Critical, Debug, Driver, MidiFile::GetSMFFile(), lock, and StopSong().

◆ SetVolume()

void MusicDriver_FluidSynth::SetVolume ( uint8_t vol)
overridevirtual

Set the volume, if possible.

Parameters
volThe new volume.

Implements MusicDriver.

Definition at line 224 of file fluidsynth.cpp.

References _midi, Critical, Debug, Driver, and lock.

◆ Start()

std::optional< std::string_view > MusicDriver_FluidSynth::Start ( const StringList & parm)
overridevirtual

Start this driver.

Parameters
parmParameters passed to the driver.
Returns
std::nullopt if everything went okay, otherwise an error message.

Implements Driver.

Definition at line 76 of file fluidsynth.cpp.

References _default_soundfonts, _midi, Debug, Driver, Error, GetDriverParam(), lock, and MxSetMusicSource().

◆ Stop()

void MusicDriver_FluidSynth::Stop ( )
overridevirtual

Stop this driver.

Implements Driver.

Definition at line 154 of file fluidsynth.cpp.

References _midi, lock, and MxSetMusicSource().

◆ StopSong()

void MusicDriver_FluidSynth::StopSong ( )
overridevirtual

Stop playing the current song.

Implements MusicDriver.

Definition at line 202 of file fluidsynth.cpp.

References _midi, and lock.

Referenced by PlaySong().


The documentation for this class was generated from the following files: