|
| int | open () override |
| |
| bool | isOpen () const override |
| |
| void | close () override |
| |
| uint32 | getBaseTempo () override |
| |
| MidiChannel * | allocateChannel () override |
| |
| MidiChannel * | getPercussionChannel () override |
| |
| void | send (int8 source, uint32 b) override |
| |
| void | stopAllNotes (uint8 source, uint8 channel) override |
| |
| void | send (uint32 b) override |
| |
| void | send (int8 source, uint32 b) override=0 |
| |
| virtual void | send (uint32 b)=0 |
| |
| virtual void | send (int8 source, uint32 b) |
| |
| void | send (byte status, byte firstOp, byte secondOp) |
| |
| void | send (int8 source, byte status, byte firstOp, byte secondOp) |
| |
| virtual void | stopAllNotes (uint8 source, uint8 channel)=0 |
| |
| void | send (uint32 b) override |
| |
| void | send (int8 source, uint32 b) override=0 |
| |
| uint32 | property (int prop, uint32 param) override |
| |
| virtual void | deinitSource (uint8 source) |
| |
| void | setSourceType (SourceType type) |
| |
| void | setSourceType (uint8 source, SourceType type) |
| |
| void | setSourceVolume (uint16 volume) |
| |
| void | setSourceVolume (uint8 source, uint16 volume) |
| |
| void | resetSourceVolume () |
| |
| void | resetSourceVolume (uint8 source) |
| |
| void | setSourceNeutralVolume (uint16 volume) |
| |
| void | setSourceNeutralVolume (uint8 source, uint16 volume) |
| |
| void | startFade (uint16 duration, uint16 targetVolume) |
| |
| void | startFade (uint8 source, uint16 duration, uint16 targetVolume) |
| |
| void | abortFade (FadeAbortType abortType=FADE_ABORT_TYPE_END_VOLUME) |
| |
| void | abortFade (uint8 source, FadeAbortType abortType=FADE_ABORT_TYPE_END_VOLUME) |
| |
| bool | isFading () |
| |
| bool | isFading (uint8 source) |
| |
| void | setControllerDefault (ControllerDefaultType type) |
| |
| void | setControllerDefault (ControllerDefaultType type, int16 value) |
| |
| void | setControllerDefaults (ControllerDefaultType type, const int16 *values) |
| |
| void | clearControllerDefault (ControllerDefaultType type) |
| |
| void | setInstrumentRemapping (const byte *instrumentRemapping) |
| |
| void | syncSoundSettings () |
| |
| virtual void | stopAllNotes (uint8 source, uint8 channel)=0 |
| |
| void | setTimerCallback (void *timer_param, Common::TimerManager::TimerProc timer_proc) override |
| |
| virtual void | send (uint32 b)=0 |
| |
| virtual void | send (int8 source, uint32 b) |
| |
| void | send (byte status, byte firstOp, byte secondOp) |
| |
| void | send (int8 source, byte status, byte firstOp, byte secondOp) |
| |
| void | midiDriverCommonSend (uint32 b) |
| |
| void | midiDriverCommonSysEx (const byte *msg, uint16 length) |
| |
| virtual int | open ()=0 |
| |
| virtual bool | isOpen () const =0 |
| |
| virtual void | close ()=0 |
| |
| virtual uint32 | property (int prop, uint32 param) |
| |
|
virtual void | setPitchBendRange (byte channel, uint range) |
| |
| void | sendMT32Reset () |
| |
| void | sendGMReset () |
| |
| virtual void | setTimerCallback (void *timer_param, Common::TimerManager::TimerProc timer_proc)=0 |
| |
| virtual uint32 | getBaseTempo ()=0 |
| |
| virtual MidiChannel * | allocateChannel ()=0 |
| |
| virtual MidiChannel * | getPercussionChannel ()=0 |
| |
|
virtual void | setEngineSoundFont (Common::SeekableReadStream *soundFontData) |
| |
|
virtual bool | acceptsSoundFontData () |
| |
| virtual void | send (uint32 b)=0 |
| |
| virtual void | send (int8 source, uint32 b) |
| |
| void | send (byte status, byte firstOp, byte secondOp) |
| |
| void | send (int8 source, byte status, byte firstOp, byte secondOp) |
| |
| virtual void | sysEx (const byte *msg, uint16 length) |
| |
| virtual uint16 | sysExNoDelay (const byte *msg, uint16 length) |
| |
|
virtual void | metaEvent (byte type, const byte *data, uint16 length) |
| |
| virtual void | metaEvent (int8 source, byte type, const byte *data, uint16 length) |
| |
| virtual void | stopAllNotes (bool stopSustainedNotes=false) |
| |
| virtual bool | isReady (int8 source=-1) |
| |
|
| enum | SourceType { SOURCE_TYPE_UNDEFINED
, SOURCE_TYPE_MUSIC
, SOURCE_TYPE_SFX
} |
| |
| enum | FadeAbortType { FADE_ABORT_TYPE_END_VOLUME
, FADE_ABORT_TYPE_CURRENT_VOLUME
, FADE_ABORT_TYPE_START_VOLUME
} |
| |
| enum | ControllerDefaultType {
CONTROLLER_DEFAULT_PROGRAM
, CONTROLLER_DEFAULT_INSTRUMENT_BANK
, CONTROLLER_DEFAULT_DRUMKIT
, CONTROLLER_DEFAULT_CHANNEL_PRESSURE
,
CONTROLLER_DEFAULT_PITCH_BEND
, CONTROLLER_DEFAULT_MODULATION
, CONTROLLER_DEFAULT_VOLUME
, CONTROLLER_DEFAULT_PANNING
,
CONTROLLER_DEFAULT_EXPRESSION
, CONTROLLER_DEFAULT_SUSTAIN
, CONTROLLER_DEFAULT_RPN
, CONTROLLER_DEFAULT_PITCH_BEND_SENSITIVITY
,
CONTROLLER_DEFAULT_REVERB
, CONTROLLER_DEFAULT_CHORUS
} |
| |
| enum | DeviceStringType { kDriverName
, kDriverId
, kDeviceName
, kDeviceId
} |
| |
| enum | { MERR_CANNOT_CONNECT = 1
, MERR_DEVICE_NOT_AVAILABLE = 3
, MERR_ALREADY_OPEN = 4
} |
| |
| enum | {
PROP_OLD_ADLIB = 2
, PROP_CHANNEL_MASK = 3
, PROP_SCUMM_OPL3 = 4
, PROP_USER_VOLUME_SCALING = 5
,
PROP_MIDI_DATA_REVERSE_PANNING = 6
, PROP_OPL_ACCURACY_MODE = 7
, PROP_OPL_CHANNEL_ALLOCATION_MODE = 8
, PROP_MILES_VERSION = 9
,
PROP_OPL_RHYTHM_MODE_IGNORE_NOTE_OFF = 10
} |
| |
| typedef uint32 | DeviceHandle |
| |
| static const uint8 | MAXIMUM_SOURCES = 10 |
| |
| static const uint16 | DEFAULT_SOURCE_NEUTRAL_VOLUME = 255 |
| |
|
static const byte | _mt32ToGm [128] |
| |
|
static const byte | _gmToMt32 [128] |
| |
|
static const uint8 | MIDI_CHANNEL_COUNT = 16 |
| |
|
static const uint8 | MIDI_RHYTHM_CHANNEL = 9 |
| |
|
static const byte | MIDI_COMMAND_NOTE_OFF = 0x80 |
| |
|
static const byte | MIDI_COMMAND_NOTE_ON = 0x90 |
| |
|
static const byte | MIDI_COMMAND_POLYPHONIC_AFTERTOUCH = 0xA0 |
| |
|
static const byte | MIDI_COMMAND_CONTROL_CHANGE = 0xB0 |
| |
|
static const byte | MIDI_COMMAND_PROGRAM_CHANGE = 0xC0 |
| |
|
static const byte | MIDI_COMMAND_CHANNEL_AFTERTOUCH = 0xD0 |
| |
|
static const byte | MIDI_COMMAND_PITCH_BEND = 0xE0 |
| |
|
static const byte | MIDI_COMMAND_SYSTEM = 0xF0 |
| |
|
static const byte | MIDI_CONTROLLER_BANK_SELECT_MSB = 0x00 |
| |
|
static const byte | MIDI_CONTROLLER_MODULATION = 0x01 |
| |
|
static const byte | MIDI_CONTROLLER_DATA_ENTRY_MSB = 0x06 |
| |
|
static const byte | MIDI_CONTROLLER_VOLUME = 0x07 |
| |
|
static const byte | MIDI_CONTROLLER_BALANCE = 0x08 |
| |
|
static const byte | MIDI_CONTROLLER_PANNING = 0x0A |
| |
|
static const byte | MIDI_CONTROLLER_EXPRESSION = 0x0B |
| |
|
static const byte | MIDI_CONTROLLER_BANK_SELECT_LSB = 0x20 |
| |
|
static const byte | MIDI_CONTROLLER_DATA_ENTRY_LSB = 0x26 |
| |
|
static const byte | MIDI_CONTROLLER_SUSTAIN = 0x40 |
| |
|
static const byte | MIDI_CONTROLLER_PORTAMENTO = 0x41 |
| |
|
static const byte | MIDI_CONTROLLER_SOSTENUTO = 0x42 |
| |
|
static const byte | MIDI_CONTROLLER_SOFT = 0x43 |
| |
|
static const byte | MIDI_CONTROLLER_REVERB = 0x5B |
| |
|
static const byte | MIDI_CONTROLLER_CHORUS = 0x5D |
| |
|
static const byte | MIDI_CONTROLLER_RPN_LSB = 0x64 |
| |
|
static const byte | MIDI_CONTROLLER_RPN_MSB = 0x65 |
| |
|
static const byte | MIDI_CONTROLLER_ALL_SOUND_OFF = 0x78 |
| |
|
static const byte | MIDI_CONTROLLER_RESET_ALL_CONTROLLERS = 0x79 |
| |
|
static const byte | MIDI_CONTROLLER_ALL_NOTES_OFF = 0x7B |
| |
|
static const byte | MIDI_CONTROLLER_OMNI_ON = 0x7C |
| |
|
static const byte | MIDI_CONTROLLER_OMNI_OFF = 0x7D |
| |
|
static const byte | MIDI_CONTROLLER_MONO_ON = 0x7E |
| |
|
static const byte | MIDI_CONTROLLER_POLY_ON = 0x7F |
| |
|
static const uint16 | MIDI_RPN_PITCH_BEND_SENSITIVITY = 0x0000 |
| |
|
static const uint16 | MIDI_RPN_MASTER_TUNING_FINE = 0x0001 |
| |
|
static const uint16 | MIDI_RPN_MASTER_TUNING_COARSE = 0x0002 |
| |
|
static const uint16 | MIDI_RPN_NULL = 0x7F7F |
| |
|
static const uint8 | MIDI_META_END_OF_TRACK = 0x2F |
| |
|
static const uint8 | MIDI_META_SEQUENCER = 0x7F |
| |
|
static const uint16 | MIDI_PITCH_BEND_DEFAULT = 0x2000 |
| |
|
static const uint8 | MIDI_PANNING_DEFAULT = 0x40 |
| |
|
static const uint8 | MIDI_EXPRESSION_DEFAULT = 0x7F |
| |
|
static const uint16 | MIDI_MASTER_TUNING_FINE_DEFAULT = 0x2000 |
| |
|
static const uint8 | MIDI_MASTER_TUNING_COARSE_DEFAULT = 0x40 |
| |
|
static const uint8 | MT32_PITCH_BEND_SENSITIVITY_DEFAULT = 0x0C |
| |
|
static const uint8 | GM_PITCH_BEND_SENSITIVITY_DEFAULT = 0x02 |
| |
|
static const uint8 | GM_REVERB_DEFAULT = 0x28 |
| |
|
static const uint8 | GS_RHYTHM_FIRST_NOTE = 0x1B |
| |
|
static const uint8 | GS_RHYTHM_LAST_NOTE = 0x58 |
| |
|
MidiSource | _sources [MAXIMUM_SOURCES] |
| |
|
ControllerDefaults | _controllerDefaults |
| |
|
const byte * | _instrumentRemapping |
| |
|
bool | _userVolumeScaling |
| |
|
uint16 | _userMusicVolume |
| |
|
uint16 | _userSfxVolume |
| |
|
bool | _userMute |
| |
|
bool | _userMusicMute |
| |
|
bool | _userSfxMute |
| |
|
Common::Mutex | _fadingMutex |
| |
|
uint16 | _fadeDelay |
| |
|
uint32 | _timerRate |
| |
|
void * | _timer_param |
| |
|
Common::TimerManager::TimerProc | _timer_proc |
| |
| bool | _midiDumpEnable |
| |
| uint32 | _prevMillis |
| |
| Common::Array< byte > | _midiDumpCache |
| |
|
static const uint16 | FADING_DELAY = 25 * 1000 |
| |