19 #define OUTPUT_BUFFER_SIZE 0
20 #define DRIVER_INFO NULL
21 #define TIME_PROC Pt_Time
22 #define TIME_INFO NULL
23 #define TIME_START Pt_Start(1, 0, 0)
24 #define MIDI_THRU NULL
140 void open(
int deviceID);
204 void open(
int deviceID );
213 void write_NoteOn(
unsigned channel,
unsigned pitch,
unsigned velocity );
214 void write_NoteOn(
unsigned channel,
float frequency,
float amplitude );
215 void write_NoteOff(
unsigned channel,
unsigned pitch,
unsigned velocity );
216 void write_NoteOff(
unsigned channel,
float frequency,
float amplitude );
217 void write_PolyTouch(
unsigned channel,
unsigned pitch,
unsigned amount );
MIDIIO class: superclass of in and out; has a message buffer and current messages It's a model so you...
void write_PitchWheel(unsigned channel, unsigned amount)
[0, 16384]
AdditiveInstrument.h – Sum-of-sines synthesis instrument class.
bool is_PitchWheel_received()
unsigned get_PolyAftertouch()
CSL_MIDIMessage message()
void open()
method for opening the default stream.
bool is_Aftertouch_received()
long mBufferSize
fundamental members
MIDIIn class is-a MidiInputCallback too, and an "input-ready" flag.
bool is_NoteOff_received()
CSL_MIDIMessageType
CSL_MIDIMessageType.
void filter_active_sensing(bool flag)
bool mIsOpen
instance status indicators
void set_buffer_size(unsigned bufferSize)
unsigned get_PitchWheel()
void filter_sysex(bool flag)
MIDIIO()
< It's a model & sends itself "changed"
float get_velocity_float()
has range of [0.0 1.0] mapped to [0 127]
const PmDeviceInfo * get_device_info(int deviceID)
int get_default_input_id()
void filter_clock_msg(bool flag)
bool is_PolyTouch_received()
void copy_CSL_MIDIMessage(CSL_MIDIMessage *source, CSL_MIDIMessage *dest)
copy_CSL_MIDIMessage – copies CSL_MIDIMessage
bool is_ProgramChange_received()
void write_short(CSL_MIDIMessage msg)
unsigned get_ControlChange_function()
PmStream * mMIDIStream
opened stream
void set_buffer_size(unsigned bufferSize)
unsigned get_ControlChange_value()
int get_default_output_id()
void write_PolyTouch(unsigned channel, unsigned pitch, unsigned amount)
void write_NoteOn(unsigned channel, unsigned pitch, unsigned velocity)
convenience method for each MIDI messages writes directly and doesn't use member mMsg for temporal st...
bool poll()
poll returns a bool (really quickly)
PmEvent mBuffer[1]
buffer which gets filled by read()
bool is_ControlChange_received()
void write_NoteOff(unsigned channel, unsigned pitch, unsigned velocity)
MIDINote#, [0, 127].
unsigned get_Aftertouch()
void write_ControlChange(unsigned channel, unsigned function, unsigned value)
unsigned get_ProgramNumber()
bool is_open()
can't open the abstract class
CSL_MIDIMessageType message
void write_Aftertouch(unsigned channel, unsigned amount)
[0, 127]
void handle_error(PmError err)
static unsigned mNumInstantiated
void dump_CSL_MIDIMessage()
PmDeviceID mDeviceID
device ID which will/is opened.
bool is_NoteOn_received()
void CSL_MIDIMessageToPmEvent(CSL_MIDIMessage *cslMIDI, PmEvent *event)
CSL_MIDIMessageToPmEvent – converts CSL_MIDIMessage to PmEvent.
static bool mIsPortTimeStarted
status indicators
void read_interpret()
read method and sets internal flag for which message was received
void write_SysEX(long when, unsigned char *msg)
virtual void close()
closing MIDI stream
void dump_device_info()
printing device info for all devices.
void dump_count_devices()
printing total number of devices available
void set_message(CSL_MIDIMessage msg, long when)
static bool mIsInitialized
< static flags to keep track of driver state
void read()
generic read method. gets MIDI message and store it in mBuffer
unsigned Message_ChannelToStatus(CSL_MIDIMessageType message, unsigned channel)
Message_ChannelToStatus – converts from message and channel to status byte.
void write_ProgramChange(unsigned channel, unsigned programNum)
MIDIOut class write msgs out to a device (or file)
void PmEventToCSL_MIDIMessage(PmEvent *event, CSL_MIDIMessage *cslMIDI)
PmEventToCSL_MIDIMessage – converts PmEvent to CSL_MIDIMessage.
void set_latency(long latency)