Go to the documentation of this file.
51 virtual void openPort(
unsigned int portNumber = 0,
const std::string portName = std::string(
"RtMidi" ) ) = 0;
54 virtual void openVirtualPort(
const std::string portName = std::string(
"RtMidi" ) ) = 0;
60 virtual std::string
getPortName(
unsigned int portNumber = 0 ) = 0;
106 typedef void (*
RtMidiCallback)(
double timeStamp, std::vector<unsigned char> *message,
void *userData);
112 RtMidiIn(
const std::string clientName = std::string(
"RtMidi Input Client") );
122 void openPort(
unsigned int portNumber = 0,
const std::string Portname = std::string(
"RtMidi Input" ) );
176 void ignoreTypes(
bool midiSysex =
true,
bool midiTime =
true,
bool midiSense =
true );
186 double getMessage( std::vector<unsigned char> *message );
250 RtMidiOut(
const std::string clientName = std::string(
"RtMidi Output Client" ) );
262 void openPort(
unsigned int portNumber = 0,
const std::string portName = std::string(
"RtMidi Output" ) );
void setCallback(RtMidiCallback callback, void *userData=0)
Set a callback function to be invoked for incoming MIDI messages.
Definition: RtMidi.cpp:77
MidiMessage message
Definition: RtMidi.h:203
std::queue< MidiMessage > queue
Definition: RtMidi.h:202
virtual ~RtMidi()
Definition: RtMidi.h:68
An abstract base class for realtime MIDI input/output.
Definition: RtMidi.h:47
virtual std::string getPortName(unsigned int portNumber=0)=0
Pure virtual getPortName() function.
void(* RtMidiCallback)(double timeStamp, std::vector< unsigned char > *message, void *userData)
User callback function type definition.
Definition: RtMidi.h:106
~RtMidiOut()
The destructor closes any open MIDI connections.
std::string getPortName(unsigned int portNumber=0)
Return a string identifier for the specified MIDI input port number.
bool continueSysex
Definition: RtMidi.h:212
void setQueueSizeLimit(unsigned int queueSize)
Set the maximum number of MIDI messages to be saved in the queue.
Definition: RtMidi.cpp:109
unsigned int getPortCount()
Return the number of available MIDI input ports.
unsigned char Byte
Definition: miniz.h:401
void * apiData
Definition: RtMidi.h:208
void ignoreTypes(bool midiSysex=true, bool midiTime=true, bool midiSense=true)
Specify whether certain MIDI message types should be queued or ignored during input.
Definition: RtMidi.cpp:114
RtMidi()
Definition: RtMidi.cpp:47
RtMidiIn(const std::string clientName=std::string("RtMidi Input Client"))
Default constructor that allows an optional client name.
Definition: RtMidi.cpp:72
@ DRIVER_ERROR
Definition: RtError.h:31
void openVirtualPort(const std::string portName=std::string("RtMidi Output"))
Create a virtual output port, with optional name, to allow software connections (OS X and ALSA only).
double getMessage(std::vector< unsigned char > *message)
Fill the user-provided vector with the data bytes for the next available MIDI message in the input qu...
Definition: RtMidi.cpp:122
void closePort()
Close an open MIDI connection (if one exists).
@ MEMORY_ERROR
Definition: RtError.h:29
void * userCallback
Definition: RtMidi.h:210
void closePort(void)
Close an open MIDI connection (if one exists).
std::vector< unsigned char > bytes
Definition: RtMidi.h:191
virtual void openVirtualPort(const std::string portName=std::string("RtMidi"))=0
Pure virtual openVirtualPort() function.
Type
Defined RtError types.
Definition: RtError.h:22
MidiMessage()
Definition: RtMidi.h:195
void cancelCallback()
Cancel use of the current callback function (if one exists).
Definition: RtMidi.cpp:96
@ NO_DEVICES_FOUND
Definition: RtError.h:26
virtual void closePort(void)=0
Pure virtual closePort() function.
unsigned int getPortCount()
Return the number of available MIDI output ports.
void openVirtualPort(const std::string portName=std::string("RtMidi Input"))
Create a virtual input port, with optional name, to allow software connections (OS X and ALSA only).
std::string errorString_
Definition: RtMidi.h:77
#define NULL
Definition: glib.h:121
void openPort(unsigned int portNumber=0, const std::string Portname=std::string("RtMidi Input"))
Open a MIDI input connection.
void sendMessage(std::vector< unsigned char > *message)
Immediately send a single message out an open MIDI output port.
unsigned int queueLimit
Definition: RtMidi.h:204
@ INVALID_PARAMETER
Definition: RtError.h:30
A realtime MIDI input class.
Definition: RtMidi.h:102
std::string getPortName(unsigned int portNumber=0)
Return a string identifier for the specified MIDI port type and number.
void * apiData_
Definition: RtMidi.h:75
bool firstMessage
Definition: RtMidi.h:207
bool doInput
Definition: RtMidi.h:206
virtual void openPort(unsigned int portNumber=0, const std::string portName=std::string("RtMidi"))=0
Pure virtual openPort() function.
RtMidiInData inputData_
Definition: RtMidi.h:224
@ DEBUG_WARNING
Definition: RtError.h:24
@ WARNING
Definition: RtError.h:23
void initialize(const std::string &clientName)
RtMidiInData()
Definition: RtMidi.h:215
void * userData
Definition: RtMidi.h:211
Exception handling class for RtAudio & RtMidi.
Definition: RtError.h:19
bool usingCallback
Definition: RtMidi.h:209
~RtMidiIn()
If a MIDI connection is still open, it will be closed by the destructor.
double timeStamp
Definition: RtMidi.h:192
void initialize(const std::string &clientName)
@ THREAD_ERROR
Definition: RtError.h:33
RtMidiOut(const std::string clientName=std::string("RtMidi Output Client"))
Default constructor that allows an optional client name.
Definition: RtMidi.cpp:147
void openPort(unsigned int portNumber=0, const std::string portName=std::string("RtMidi Output"))
Open a MIDI output connection.
A realtime MIDI output class.
Definition: RtMidi.h:243
void error(RtError::Type type)
Definition: RtMidi.cpp:52
unsigned char ignoreFlags
Definition: RtMidi.h:205
virtual unsigned int getPortCount()=0
Pure virtual getPortCount() function.
bool connected_
Definition: RtMidi.h:76