#include <WindowsMidiDriver.h>
Inheritance diagram for WindowsMidiDriver:
Public Member Functions | |
WindowsMidiDriver () | |
Static Public Member Functions | |
static const MidiDriverDesc * | getDesc () |
Protected Member Functions | |
virtual int | open () |
virtual void | close () |
virtual void | send (uint32 message) |
virtual void | send_sysex (uint8 status, const uint8 *msg, uint16 length) |
virtual void | increaseThreadPriority () |
virtual void | yield () |
Static Private Member Functions | |
static MidiDriver * | createInstance () |
static bool | doMCIError (MMRESULT res) |
Private Attributes | |
signed int | dev_num |
HMIDIOUT | midi_port |
HMIDIOUT | midi_port2 |
MIDIHDR | _streamHeader |
uint8 * | _streamBuffer |
int | _streamBufferSize |
HANDLE | _streamEvent |
Static Private Attributes | |
static const MidiDriverDesc | desc |
Definition at line 39 of file WindowsMidiDriver.h.
WindowsMidiDriver::WindowsMidiDriver | ( | ) |
Definition at line 42 of file WindowsMidiDriver.cpp.
References midi_port2.
Referenced by createInstance().
void WindowsMidiDriver::close | ( | ) | [protected, virtual] |
Close the Midi Device.
Implements LowLevelMidiDriver.
Definition at line 139 of file WindowsMidiDriver.cpp.
References _streamBuffer, _streamBufferSize, _streamEvent, midi_port, and midi_port2.
static MidiDriver* WindowsMidiDriver::createInstance | ( | ) | [inline, static, private] |
bool WindowsMidiDriver::doMCIError | ( | MMRESULT | res | ) | [static, private] |
Definition at line 51 of file WindowsMidiDriver.cpp.
References perr.
Referenced by open(), and send_sysex().
static const MidiDriverDesc* WindowsMidiDriver::getDesc | ( | ) | [inline, static] |
Definition at line 61 of file WindowsMidiDriver.h.
References desc.
Referenced by InitMidiDriverVector().
void WindowsMidiDriver::increaseThreadPriority | ( | ) | [protected, virtual] |
Increate the Thread Priority of the Play (current) thread.
Reimplemented from LowLevelMidiDriver.
Definition at line 234 of file WindowsMidiDriver.cpp.
int WindowsMidiDriver::open | ( | ) | [protected, virtual] |
Open the Midi Device
Implements LowLevelMidiDriver.
Definition at line 63 of file WindowsMidiDriver.cpp.
References _streamEvent, dev_num, doMCIError(), MidiDriver::getConfigSetting(), PentZip::long(), midi_port, midi_port2, perr, pout, Pentagram::strcasecmp(), and Pentagram::strncasecmp().
void WindowsMidiDriver::send | ( | uint32 | message | ) | [protected, virtual] |
Send a message to the Midi Device.
Implements LowLevelMidiDriver.
Definition at line 154 of file WindowsMidiDriver.cpp.
References midi_port, and midi_port2.
void WindowsMidiDriver::send_sysex | ( | uint8 | status, | |
const uint8 * | msg, | |||
uint16 | length | |||
) | [protected, virtual] |
Send a SysEX message to the Midi Device.
Reimplemented from LowLevelMidiDriver.
Definition at line 166 of file WindowsMidiDriver.cpp.
References _streamBuffer, _streamBufferSize, _streamEvent, _streamHeader, doMCIError(), midi_port, midi_port2, and perr.
void WindowsMidiDriver::yield | ( | ) | [protected, virtual] |
Yield execution of the current thread.
Reimplemented from LowLevelMidiDriver.
Definition at line 239 of file WindowsMidiDriver.cpp.
uint8* WindowsMidiDriver::_streamBuffer [private] |
int WindowsMidiDriver::_streamBufferSize [private] |
HANDLE WindowsMidiDriver::_streamEvent [private] |
MIDIHDR WindowsMidiDriver::_streamHeader [private] |
const MidiDriver::MidiDriverDesc WindowsMidiDriver::desc [static, private] |
Initial value:
MidiDriver::MidiDriverDesc ("Windows", createInstance)
Definition at line 53 of file WindowsMidiDriver.h.
Referenced by getDesc().
signed int WindowsMidiDriver::dev_num [private] |
HMIDIOUT WindowsMidiDriver::midi_port [private] |
Definition at line 42 of file WindowsMidiDriver.h.
Referenced by close(), open(), send(), and send_sysex().
HMIDIOUT WindowsMidiDriver::midi_port2 [private] |
Definition at line 44 of file WindowsMidiDriver.h.
Referenced by close(), open(), send(), send_sysex(), and WindowsMidiDriver().