OpenTTD Source: MusicDriver_BeMidi Class Reference

OpenTTD Source 15.0-beta1

Public Member Functions | Private Attributes
MusicDriver_BeMidi Class Reference

The midi player for BeOS. More...

`#include <bemidi.h>`

Inheritance diagram for MusicDriver_BeMidi:

## 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.

## Private Attributes
BMidiSynthFile * | midi_synth_file = nullptr
double | current_volume = 1.0
bool | just_started = false

## Additional Inherited Members
Public Types inherited from Driver
enum | Type { DT_BEGIN = 0 , DT_MUSIC = 0 , DT_SOUND , DT_VIDEO , DT_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

The midi player for BeOS.

Definition at line 19 of file bemidi.h.

## Member Function Documentation

## ◆ GetName()

std::string_view MusicDriver_BeMidi::GetName | ( |  | ) | const
| inlineoverridevirtual

Get the name of this driver.

Returns
  The name of the driver.

Implements Driver.

Definition at line 32 of file bemidi.h.

## ◆ IsSongPlaying()

bool MusicDriver_BeMidi::IsSongPlaying | ( |  | ) |
| overridevirtual

Are we currently playing a song?

Returns
  True if a song is being played.

Implements MusicDriver.

Definition at line 58 of file bemidi.cpp.

## ◆ PlaySong()

void MusicDriver_BeMidi::PlaySong | ( | const MusicSongInfo & | song | ) |
| overridevirtual

Play a particular song.

Parameters

  song | The information for the song to play.

Implements MusicDriver.

Definition at line 31 of file bemidi.cpp.

References MidiFile::GetSMFFile(), and Stop().

## ◆ SetVolume()

void MusicDriver_BeMidi::SetVolume | ( | uint8_t | vol | ) |
| overridevirtual

Set the volume, if possible.

Parameters

  vol | The new volume.

Implements MusicDriver.

Definition at line 72 of file bemidi.cpp.

## ◆ Start()

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

Start this driver.

Parameters

  parm | Parameters passed to the driver.

Returns
  std::nullopt if everything went okay, otherwise an error message.

Implements Driver.

Definition at line 21 of file bemidi.cpp.

## ◆ Stop()

void MusicDriver_BeMidi::Stop | ( |  | ) |
| overridevirtual

Stop this driver.

Implements Driver.

Definition at line 26 of file bemidi.cpp.

References StopSong().

Referenced by PlaySong().

## ◆ StopSong()

void MusicDriver_BeMidi::StopSong | ( |  | ) |
| overridevirtual

Stop playing the current song.

Implements MusicDriver.

Definition at line 50 of file bemidi.cpp.

Referenced by Stop().

## Field Documentation

## ◆ current_volume

double MusicDriver_BeMidi::current_volume = 1.0
| private

Definition at line 36 of file bemidi.h.

## ◆ just_started

bool MusicDriver_BeMidi::just_started = false
| private

Definition at line 37 of file bemidi.h.

## ◆ midi_synth_file

BMidiSynthFile* MusicDriver_BeMidi::midi_synth_file = nullptr
| private

Definition at line 35 of file bemidi.h.

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

- src/music/bemidi.h
- src/music/bemidi.cpp