WindowsMidiDriver Class Reference

#include <WindowsMidiDriver.h>

Inheritance diagram for WindowsMidiDriver:

LowLevelMidiDriver MidiDriver XMidiSequenceHandler List of all members.

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 MidiDrivercreateInstance ()
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

Detailed Description

Definition at line 39 of file WindowsMidiDriver.h.


Constructor & Destructor Documentation

WindowsMidiDriver::WindowsMidiDriver (  ) 

Definition at line 42 of file WindowsMidiDriver.cpp.

References midi_port2.

Referenced by createInstance().


Member Function Documentation

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]

Definition at line 54 of file WindowsMidiDriver.h.

References WindowsMidiDriver().

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

Returns:
0 on sucess. Non zero on failure.

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.


Member Data Documentation

uint8* WindowsMidiDriver::_streamBuffer [private]

Definition at line 49 of file WindowsMidiDriver.h.

Referenced by close(), and send_sysex().

int WindowsMidiDriver::_streamBufferSize [private]

Definition at line 50 of file WindowsMidiDriver.h.

Referenced by close(), and send_sysex().

HANDLE WindowsMidiDriver::_streamEvent [private]

Definition at line 51 of file WindowsMidiDriver.h.

Referenced by close(), open(), and send_sysex().

MIDIHDR WindowsMidiDriver::_streamHeader [private]

Definition at line 48 of file WindowsMidiDriver.h.

Referenced by send_sysex().

const MidiDriver::MidiDriverDesc WindowsMidiDriver::desc [static, private]

Initial value:

Definition at line 53 of file WindowsMidiDriver.h.

Referenced by getDesc().

signed int WindowsMidiDriver::dev_num [private]

Definition at line 41 of file WindowsMidiDriver.h.

Referenced by open().

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().


The documentation for this class was generated from the following files:
Generated on Fri Jul 27 22:30:11 2007 for pentagram by  doxygen 1.4.7