diff --git a/a00002.html b/a00002.html
index 568b143..8c51b4a 100644
--- a/a00002.html
+++ b/a00002.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -114,8 +114,7 @@ Functions
MIDI Library for the Arduino.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
+
Project Arduino MIDI Library
Author Francois Best
Date 24/02/11 MIT - Copyright (c) 2015 Francois Best
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
@@ -169,8 +168,8 @@ Functions
getSysExArrayLength Code inspired from Ruin & Wesen's SysEx encoder/decoder - http://ruinwesen.com
-
Definition at line 83 of file MIDI.cpp .
-
89 for (
unsigned i = 0; i < inLength; ++i)
93 msbStorage = inSysEx[i];
98 const byte body = inSysEx[i];
99 const byte msb = ((msbStorage >> byteIndex--) & 1) << 7;
100 outData[count++] = msb | body;
+
Definition at line 82 of file MIDI.cpp .
+
88 for (
unsigned i = 0; i < inLength; ++i)
92 msbStorage = inSysEx[i];
97 const byte body = inSysEx[i];
98 const byte msb = ((msbStorage >> byteIndex--) & 1) << 7;
99 outData[count++] = msb | body;
@@ -218,8 +217,8 @@ getSysExArrayLength Code inspired from Ruin & Wesen's SysEx encoder/decoder
Returns The lenght of the encoded output buffer.
See also decodeSysEx Code inspired from Ruin & Wesen's SysEx encoder/decoder - http://ruinwesen.com
-Definition at line 46 of file MIDI.cpp .
- 48 unsigned outLength = 0;
52 for (
unsigned i = 0; i < inLength; ++i)
54 const byte data = inData[i];
55 const byte msb = data >> 7;
56 const byte body = data & 0x7f;
58 outSysEx[0] |= (msb << (6 - count));
59 outSysEx[1 + count] = body;
69 return outLength + count + (count != 0 ? 1 : 0);
+
Definition at line 45 of file MIDI.cpp .
+
47 unsigned outLength = 0;
51 for (
unsigned i = 0; i < inLength; ++i)
53 const byte data = inData[i];
54 const byte msb = data >> 7;
55 const byte body = data & 0x7f;
57 outSysEx[0] |= (msb << (6 - count));
58 outSysEx[1 + count] = body;
68 return outLength + count + (count != 0 ? 1 : 0);
@@ -229,7 +228,7 @@ getSysExArrayLength Code inspired from Ruin & Wesen's SysEx encoder/decoder
diff --git a/a00002_source.html b/a00002_source.html
index 07baccd..feb72eb 100644
--- a/a00002_source.html
+++ b/a00002_source.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -84,96 +84,96 @@ $(document).ready(function(){initNavTree('a00002_source.html','');});
MIDI.h
-
Go to the documentation of this file. 45 template <
class SerialPort,
class _Settings = DefaultSettings>
92 bool inArrayContainsBoundaries =
false );
103 inline void beginRpn (
unsigned inNumber,
149 inline bool check ()
const ;
186 void launchCallback();
188 void (*mNoteOffCallback)(
byte channel,
byte note,
byte velocity);
189 void (*mNoteOnCallback)(
byte channel,
byte note,
byte velocity);
190 void (*mAfterTouchPolyCallback)(
byte channel,
byte note,
byte velocity);
191 void (*mControlChangeCallback)(
byte channel,
byte ,
byte );
192 void (*mProgramChangeCallback)(byte channel,
byte );
193 void (*mAfterTouchChannelCallback)(byte channel,
byte );
194 void (*mPitchBendCallback)(byte channel, int);
195 void (*mSystemExclusiveCallback)(byte * array,
unsigned size);
196 void (*mTimeCodeQuarterFrameCallback)(byte data);
197 void (*mSongPositionCallback)(
unsigned beats);
198 void (*mSongSelectCallback)(byte songnumber);
199 void (*mTuneRequestCallback)(void);
200 void (*mClockCallback)(void);
201 void (*mStartCallback)(void);
202 void (*mContinueCallback)(void);
203 void (*mStopCallback)(void);
204 void (*mActiveSensingCallback)(void);
205 void (*mSystemResetCallback)(void);
219 void thruFilter(byte inChannel);
223 inline void handleNullVelocityNoteOnAsNoteOff();
224 inline bool inputFilter(
Channel inChannel);
225 inline void resetInput();
237 byte mPendingMessage[3];
238 unsigned mPendingMessageExpectedLenght;
239 unsigned mPendingMessageIndex;
240 unsigned mCurrentRpnNumber;
241 unsigned mCurrentNrpnNumber;
242 bool mThruActivated : 1;
244 MidiMessage mMessage;
void setHandleProgramChange(void(*fptr)(byte channel, byte number))
-
void disconnectCallbackFromType(MidiType inType)
Detach an external function from the given type.
-
void setHandleNoteOn(void(*fptr)(byte channel, byte note, byte velocity))
-
void sendSongSelect(DataByte inSongNumber)
Send a Song Select message.
-
void setThruFilterMode(Thru::Mode inThruFilterMode)
Set the filter for thru mirroring.
-
void sendSongPosition(unsigned inBeats)
Send a Song Position Pointer message.
-
void turnThruOn(Thru::Mode inThruFilterMode=Thru::Full)
-
void beginRpn(unsigned inNumber, Channel inChannel)
Start a Registered Parameter Number frame.
-
void sendProgramChange(DataByte inProgramNumber, Channel inChannel)
Send a Program Change message.
-
MidiType getType() const
Get the last received message's type.
-
DataByte getData2() const
Get the second data byte of the last received message.
-
+
Go to the documentation of this file. 44 template <
class SerialPort,
class _Settings = DefaultSettings>
91 bool inArrayContainsBoundaries =
false );
102 inline void beginRpn (
unsigned inNumber,
148 inline bool check ()
const ;
185 void launchCallback();
187 void (*mNoteOffCallback)(
byte channel,
byte note,
byte velocity);
188 void (*mNoteOnCallback)(
byte channel,
byte note,
byte velocity);
189 void (*mAfterTouchPolyCallback)(
byte channel,
byte note,
byte velocity);
190 void (*mControlChangeCallback)(
byte channel,
byte ,
byte );
191 void (*mProgramChangeCallback)(byte channel,
byte );
192 void (*mAfterTouchChannelCallback)(byte channel,
byte );
193 void (*mPitchBendCallback)(byte channel, int);
194 void (*mSystemExclusiveCallback)(byte * array,
unsigned size);
195 void (*mTimeCodeQuarterFrameCallback)(byte data);
196 void (*mSongPositionCallback)(
unsigned beats);
197 void (*mSongSelectCallback)(byte songnumber);
198 void (*mTuneRequestCallback)(void);
199 void (*mClockCallback)(void);
200 void (*mStartCallback)(void);
201 void (*mContinueCallback)(void);
202 void (*mStopCallback)(void);
203 void (*mActiveSensingCallback)(void);
204 void (*mSystemResetCallback)(void);
218 void thruFilter(byte inChannel);
222 inline void handleNullVelocityNoteOnAsNoteOff();
223 inline bool inputFilter(
Channel inChannel);
224 inline void resetInput();
236 byte mPendingMessage[3];
237 unsigned mPendingMessageExpectedLenght;
238 unsigned mPendingMessageIndex;
239 unsigned mCurrentRpnNumber;
240 unsigned mCurrentNrpnNumber;
241 bool mThruActivated : 1;
243 MidiMessage mMessage;
void setHandleProgramChange(void(*fptr)(byte channel, byte number))
+
void disconnectCallbackFromType(MidiType inType)
Detach an external function from the given type.
+
void setHandleNoteOn(void(*fptr)(byte channel, byte note, byte velocity))
+
void sendSongSelect(DataByte inSongNumber)
Send a Song Select message.
+
void setThruFilterMode(Thru::Mode inThruFilterMode)
Set the filter for thru mirroring.
+
void sendSongPosition(unsigned inBeats)
Send a Song Position Pointer message.
+
void turnThruOn(Thru::Mode inThruFilterMode=Thru::Full)
+
void beginRpn(unsigned inNumber, Channel inChannel)
Start a Registered Parameter Number frame.
+
void sendProgramChange(DataByte inProgramNumber, Channel inChannel)
Send a Program Change message.
+
MidiType getType() const
Get the last received message's type.
+
DataByte getData2() const
Get the second data byte of the last received message.
+
MIDI Library for the Arduino - Settings.
-
#define BEGIN_MIDI_NAMESPACE
-
-
Channel getChannel() const
Get the channel of the message stored in the structure.
-
void setHandleSystemExclusive(void(*fptr)(byte *array, unsigned size))
-
#define END_MIDI_NAMESPACE
-
void setHandleSongSelect(void(*fptr)(byte songnumber))
-
unsigned getSysExArrayLength() const
Get the lenght of the System Exclusive array.
-
bool read()
Read messages from the serial port using the main input channel.
-
DataByte getData1() const
Get the first data byte of the last received message.
-
void setHandleClock(void(*fptr)(void))
-
void beginNrpn(unsigned inNumber, Channel inChannel)
Start a Non-Registered Parameter Number frame.
-
void begin(Channel inChannel=1)
Call the begin method in the setup() function of the Arduino.
-
void sendRealTime(MidiType inType)
Send a Real Time (one byte) message.
-
static Channel getChannelFromStatusByte(byte inStatus)
Returns channel in the range 1-16.
-
void setHandleStart(void(*fptr)(void))
-
-
void endRpn(Channel inChannel)
Terminate an RPN frame. This will send a Null Function to deselect the currently selected RPN...
-
void setInputChannel(Channel inChannel)
Set the value for the input MIDI channel.
-
void setHandleSystemReset(void(*fptr)(void))
-
bool getThruState() const
-
Channel getInputChannel() const
-
void endNrpn(Channel inChannel)
Terminate an NRPN frame. This will send a Null Function to deselect the currently selected NRPN...
-
enum __attribute__((deprecated)) MidiFilterMode
-
-
void sendAfterTouch(DataByte inPressure, Channel inChannel)
Send a MonoPhonic AfterTouch message (applies to all notes)
-
void sendPolyPressure(DataByte inNoteNumber, DataByte inPressure, Channel inChannel) __attribute__((deprecated))
Send a Polyphonic AfterTouch message (applies to a specified note)
-
void sendRpnDecrement(byte inAmount, Channel inChannel)
-
void sendNrpnValue(unsigned inValue, Channel inChannel)
Send a 14-bit value for the currently selected NRPN number.
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
void sendTimeCodeQuarterFrame(DataByte inTypeNibble, DataByte inValuesNibble)
Send a MIDI Time Code Quarter Frame.
-
void sendNrpnDecrement(byte inAmount, Channel inChannel)
-
void setHandleSongPosition(void(*fptr)(unsigned beats))
+
#define BEGIN_MIDI_NAMESPACE
+
+
Channel getChannel() const
Get the channel of the message stored in the structure.
+
void setHandleSystemExclusive(void(*fptr)(byte *array, unsigned size))
+
#define END_MIDI_NAMESPACE
+
void setHandleSongSelect(void(*fptr)(byte songnumber))
+
unsigned getSysExArrayLength() const
Get the lenght of the System Exclusive array.
+
bool read()
Read messages from the serial port using the main input channel.
+
DataByte getData1() const
Get the first data byte of the last received message.
+
void setHandleClock(void(*fptr)(void))
+
void beginNrpn(unsigned inNumber, Channel inChannel)
Start a Non-Registered Parameter Number frame.
+
void begin(Channel inChannel=1)
Call the begin method in the setup() function of the Arduino.
+
void sendRealTime(MidiType inType)
Send a Real Time (one byte) message.
+
static Channel getChannelFromStatusByte(byte inStatus)
Returns channel in the range 1-16.
+
void setHandleStart(void(*fptr)(void))
+
+
void endRpn(Channel inChannel)
Terminate an RPN frame. This will send a Null Function to deselect the currently selected RPN...
+
void setInputChannel(Channel inChannel)
Set the value for the input MIDI channel.
+
void setHandleSystemReset(void(*fptr)(void))
+
bool getThruState() const
+
Channel getInputChannel() const
+
void endNrpn(Channel inChannel)
Terminate an NRPN frame. This will send a Null Function to deselect the currently selected NRPN...
+
enum __attribute__((deprecated)) MidiFilterMode
+
+
void sendAfterTouch(DataByte inPressure, Channel inChannel)
Send a MonoPhonic AfterTouch message (applies to all notes)
+
void sendPolyPressure(DataByte inNoteNumber, DataByte inPressure, Channel inChannel) __attribute__((deprecated))
Send a Polyphonic AfterTouch message (applies to a specified note)
+
void sendRpnDecrement(byte inAmount, Channel inChannel)
+
void sendNrpnValue(unsigned inValue, Channel inChannel)
Send a 14-bit value for the currently selected NRPN number.
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
void sendTimeCodeQuarterFrame(DataByte inTypeNibble, DataByte inValuesNibble)
Send a MIDI Time Code Quarter Frame.
+
void sendNrpnDecrement(byte inAmount, Channel inChannel)
+
void setHandleSongPosition(void(*fptr)(unsigned beats))
MIDI Library for the Arduino - Inline implementations.
-
-
unsigned encodeSysEx(const byte *inData, byte *outSysEx, unsigned inLenght)
Encode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes ...
-
-
Thru::Mode getFilterMode() const
-
void sendPitchBend(int inPitchValue, Channel inChannel)
Send a Pitch Bend message using a signed integer value.
-
static MidiType getTypeFromStatusByte(byte inStatus)
Extract an enumerated MIDI type from a status byte.
-
void setHandleActiveSensing(void(*fptr)(void))
-
MidiInterface(SerialPort &inSerial)
Constructor for MidiInterface.
+
+
unsigned encodeSysEx(const byte *inData, byte *outSysEx, unsigned inLenght)
Encode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes ...
+
+
Thru::Mode getFilterMode() const
+
void sendPitchBend(int inPitchValue, Channel inChannel)
Send a Pitch Bend message using a signed integer value.
+
static MidiType getTypeFromStatusByte(byte inStatus)
Extract an enumerated MIDI type from a status byte.
+
void setHandleActiveSensing(void(*fptr)(void))
+
MidiInterface(SerialPort &inSerial)
Constructor for MidiInterface.
MIDI Library for the Arduino - Message struct definition.
-
static bool isChannelMessage(MidiType inType)
-
-
-
void setHandleTimeCodeQuarterFrame(void(*fptr)(byte data))
-
void sendTuneRequest()
Send a Tune Request message.
-
void setHandleContinue(void(*fptr)(void))
-
void sendNrpnIncrement(byte inAmount, Channel inChannel)
+
static bool isChannelMessage(MidiType inType)
+
+
+
void setHandleTimeCodeQuarterFrame(void(*fptr)(byte data))
+
void sendTuneRequest()
Send a Tune Request message.
+
void setHandleContinue(void(*fptr)(void))
+
void sendNrpnIncrement(byte inAmount, Channel inChannel)
MIDI Library for the Arduino - Definitions.
-
void sendRpnValue(unsigned inValue, Channel inChannel)
Send a 14-bit value for the currently selected RPN number.
-
unsigned decodeSysEx(const byte *inSysEx, byte *outData, unsigned inLenght)
Decode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes ...
+
void sendRpnValue(unsigned inValue, Channel inChannel)
Send a 14-bit value for the currently selected RPN number.
+
unsigned decodeSysEx(const byte *inSysEx, byte *outData, unsigned inLenght)
Decode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes ...
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
-
void sendSysEx(unsigned inLength, const byte *inArray, bool inArrayContainsBoundaries=false)
Generate and send a System Exclusive frame.
-
void setHandleNoteOff(void(*fptr)(byte channel, byte note, byte velocity))
-
bool check() const
Check if a valid message is stored in the structure.
-
void setHandlePitchBend(void(*fptr)(byte channel, int bend))
-
void setHandleStop(void(*fptr)(void))
-
void sendNoteOn(DataByte inNoteNumber, DataByte inVelocity, Channel inChannel)
Send a Note On message.
-
const byte * getSysExArray() const
Get the System Exclusive byte array.
-
Fully enabled Thru (every incoming message is sent back).
-
void setHandleTuneRequest(void(*fptr)(void))
-
~MidiInterface()
Destructor for MidiInterface.
-
void setHandleControlChange(void(*fptr)(byte channel, byte number, byte value))
-
void sendNoteOff(DataByte inNoteNumber, DataByte inVelocity, Channel inChannel)
Send a Note Off message.
-
The main class for MIDI handling. It is templated over the type of serial port to provide abstraction...
-
void setHandleAfterTouchChannel(void(*fptr)(byte channel, byte pressure))
-
void sendRpnIncrement(byte inAmount, Channel inChannel)
-
void setHandleAfterTouchPoly(void(*fptr)(byte channel, byte note, byte pressure))
+
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
+
void sendSysEx(unsigned inLength, const byte *inArray, bool inArrayContainsBoundaries=false)
Generate and send a System Exclusive frame.
+
void setHandleNoteOff(void(*fptr)(byte channel, byte note, byte velocity))
+
bool check() const
Check if a valid message is stored in the structure.
+
void setHandlePitchBend(void(*fptr)(byte channel, int bend))
+
void setHandleStop(void(*fptr)(void))
+
void sendNoteOn(DataByte inNoteNumber, DataByte inVelocity, Channel inChannel)
Send a Note On message.
+
const byte * getSysExArray() const
Get the System Exclusive byte array.
+
Fully enabled Thru (every incoming message is sent back).
+
void setHandleTuneRequest(void(*fptr)(void))
+
~MidiInterface()
Destructor for MidiInterface.
+
void setHandleControlChange(void(*fptr)(byte channel, byte number, byte value))
+
void sendNoteOff(DataByte inNoteNumber, DataByte inVelocity, Channel inChannel)
Send a Note Off message.
+
The main class for MIDI handling. It is templated over the type of serial port to provide abstraction...
+
void setHandleAfterTouchChannel(void(*fptr)(byte channel, byte pressure))
+
void sendRpnIncrement(byte inAmount, Channel inChannel)
+
void setHandleAfterTouchPoly(void(*fptr)(byte channel, byte note, byte pressure))
diff --git a/a00004.html b/a00004.html
deleted file mode 100644
index d36a0a0..0000000
--- a/a00004.html
+++ /dev/null
@@ -1,118 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: MIDI_Callbacks.ino
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This example shows how to use callbacks for easier MIDI input handling.
-
-
-
-
-
-
diff --git a/a00005.html b/a00005.html
index 67ceffd..23f68bd 100644
--- a/a00005.html
+++ b/a00005.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -91,8 +91,7 @@ $(document).ready(function(){initNavTree('a00005.html','');});
Go to the source code of this file.
MIDI Library for the Arduino - Inline implementations.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
+
Project Arduino MIDI Library
Author Francois Best
Date 24/02/11 MIT - Copyright (c) 2015 Francois Best
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
@@ -105,7 +104,7 @@ $(document).ready(function(){initNavTree('a00005.html','');});
diff --git a/a00005_source.html b/a00005_source.html
index 9440551..e20ac90 100644
--- a/a00005_source.html
+++ b/a00005_source.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -84,130 +84,130 @@ $(document).ready(function(){initNavTree('a00005_source.html','');});
MIDI.hpp
-
Go to the documentation of this file. 34 template <
class SerialPort,
class Settings>
40 , mPendingMessageExpectedLenght(0)
41 , mPendingMessageIndex(0)
42 , mCurrentRpnNumber(0xffff)
43 , mCurrentNrpnNumber(0xffff)
44 , mThruActivated(true)
45 , mThruFilterMode(
Thru ::Full)
49 mAfterTouchPolyCallback = 0;
50 mControlChangeCallback = 0;
51 mProgramChangeCallback = 0;
52 mAfterTouchChannelCallback = 0;
53 mPitchBendCallback = 0;
54 mSystemExclusiveCallback = 0;
55 mTimeCodeQuarterFrameCallback = 0;
56 mSongPositionCallback = 0;
57 mSongSelectCallback = 0;
58 mTuneRequestCallback = 0;
61 mContinueCallback = 0;
63 mActiveSensingCallback = 0;
64 mSystemResetCallback = 0;
71 template <
class SerialPort,
class Settings>
84 template <
class SerialPort,
class Settings>
89 mSerial.
template open<Settings::BaudRate>();
91 mSerial.begin(Settings::BaudRate);
94 mInputChannel = inChannel;
98 mPendingMessageIndex = 0;
99 mPendingMessageExpectedLenght = 0;
101 mCurrentRpnNumber = 0xffff;
102 mCurrentNrpnNumber = 0xffff;
104 mMessage.
valid =
false ;
111 mThruActivated =
true ;
133 template <
class SerialPort,
class Settings>
153 const StatusByte status = getStatus(inType, inChannel);
155 if (Settings::UseRunningStatus)
157 if (mRunningStatus_TX != status)
160 mRunningStatus_TX = status;
161 mSerial.write(mRunningStatus_TX);
167 mSerial.write(status);
171 mSerial.write(inData1);
174 mSerial.write(inData2);
194 template <
class SerialPort,
class Settings>
199 send (
NoteOn , inNoteNumber, inVelocity, inChannel);
213 template <
class SerialPort,
class Settings>
218 send (
NoteOff , inNoteNumber, inVelocity, inChannel);
225 template <
class SerialPort,
class Settings>
238 template <
class SerialPort,
class Settings>
253 template <
class SerialPort,
class Settings>
265 template <
class SerialPort,
class Settings>
278 template <
class SerialPort,
class Settings>
292 template <
class SerialPort,
class Settings>
297 send (
PitchBend , (bend & 0x7f), (bend >> 7) & 0x7f, inChannel);
307 template <
class SerialPort,
class Settings>
312 const int value = int(inPitchValue *
double (scale));
325 template <
class SerialPort,
class Settings>
328 bool inArrayContainsBoundaries)
330 const bool writeBeginEndBytes = !inArrayContainsBoundaries;
332 if (writeBeginEndBytes)
337 for (
unsigned i = 0; i < inLength; ++i)
339 mSerial.write(inArray[i]);
342 if (writeBeginEndBytes)
347 if (Settings::UseRunningStatus)
358 template <
class SerialPort,
class Settings>
363 if (Settings::UseRunningStatus)
375 template <
class SerialPort,
class Settings>
379 const byte data = (((inTypeNibble & 0x07) << 4) | (inValuesNibble & 0x0f));
389 template <
class SerialPort,
class Settings>
393 mSerial.write(inData);
395 if (Settings::UseRunningStatus)
404 template <
class SerialPort,
class Settings>
408 mSerial.write(inBeats & 0x7f);
409 mSerial.write((inBeats >> 7) & 0x7f);
411 if (Settings::UseRunningStatus)
418 template <
class SerialPort,
class Settings>
422 mSerial.write(inSongNumber & 0x7f);
424 if (Settings::UseRunningStatus)
436 template <
class SerialPort,
class Settings>
450 mSerial.write((
byte )inType);
462 template <
class SerialPort,
class Settings>
466 if (mCurrentRpnNumber != inNumber)
468 const byte numMsb = 0x7f & (inNumber >> 7);
469 const byte numLsb = 0x7f & inNumber;
472 mCurrentRpnNumber = inNumber;
480 template <
class SerialPort,
class Settings>
484 const byte valMsb = 0x7f & (inValue >> 7);
485 const byte valLsb = 0x7f & inValue;
495 template <
class SerialPort,
class Settings>
507 template <
class SerialPort,
class Settings>
517 template <
class SerialPort,
class Settings>
528 template <
class SerialPort,
class Settings>
533 mCurrentRpnNumber = 0xffff;
542 template <
class SerialPort,
class Settings>
546 if (mCurrentNrpnNumber != inNumber)
548 const byte numMsb = 0x7f & (inNumber >> 7);
549 const byte numLsb = 0x7f & inNumber;
552 mCurrentNrpnNumber = inNumber;
560 template <
class SerialPort,
class Settings>
564 const byte valMsb = 0x7f & (inValue >> 7);
565 const byte valLsb = 0x7f & inValue;
575 template <
class SerialPort,
class Settings>
587 template <
class SerialPort,
class Settings>
597 template <
class SerialPort,
class Settings>
608 template <
class SerialPort,
class Settings>
613 mCurrentNrpnNumber = 0xffff;
620 template <
class SerialPort,
class Settings>
624 return ((
byte )inType | ((inChannel - 1) & 0x0f));
643 template <
class SerialPort,
class Settings>
646 return read (mInputChannel);
651 template <
class SerialPort,
class Settings>
660 handleNullVelocityNoteOnAsNoteOff();
661 const bool channelMatch = inputFilter(inChannel);
668 thruFilter(inChannel);
676 template <
class SerialPort,
class Settings>
679 if (mSerial.available() == 0)
692 const byte extracted = mSerial.read();
695 if (extracted == 0xf9 || extracted == 0xfd)
697 if (Settings::Use1ByteParsing)
707 if (mPendingMessageIndex == 0)
710 mPendingMessage[0] = extracted;
719 if (extracted < 0x80)
721 mPendingMessage[0] = mRunningStatus_RX;
722 mPendingMessage[1] = extracted;
723 mPendingMessageIndex = 1;
745 mMessage.
valid =
true ;
749 mPendingMessageIndex = 0;
750 mPendingMessageExpectedLenght = 0;
760 mPendingMessageExpectedLenght = 2;
770 mPendingMessageExpectedLenght = 3;
789 if (mPendingMessageIndex >= (mPendingMessageExpectedLenght - 1))
794 mMessage.
data1 = mPendingMessage[1];
797 mPendingMessageIndex = 0;
798 mPendingMessageExpectedLenght = 0;
799 mMessage.
valid =
true ;
805 mPendingMessageIndex++;
808 if (Settings::Use1ByteParsing)
823 if (extracted >= 0x80)
847 mMessage.
valid =
true ;
855 mMessage.
sysexArray [mPendingMessageIndex++] = 0xf7;
859 mMessage.
data1 = mPendingMessageIndex & 0xff;
860 mMessage.
data2 = mPendingMessageIndex >> 8;
862 mMessage.
valid =
true ;
881 mMessage.
sysexArray [mPendingMessageIndex] = extracted;
883 mPendingMessage[mPendingMessageIndex] = extracted;
886 if (mPendingMessageIndex >= (mPendingMessageExpectedLenght - 1))
904 mMessage.
data1 = mPendingMessage[1];
907 mMessage.
data2 = mPendingMessageExpectedLenght == 3 ? mPendingMessage[2] : 0;
910 mPendingMessageIndex = 0;
911 mPendingMessageExpectedLenght = 0;
913 mMessage.
valid =
true ;
916 switch (mMessage.
type )
926 mRunningStatus_RX = mPendingMessage[0];
939 mPendingMessageIndex++;
941 if (Settings::Use1ByteParsing)
956 template <
class SerialPort,
class Settings>
959 if (Settings::HandleNullVelocityNoteOnAsNoteOff &&
967 template <
class SerialPort,
class Settings>
977 if ((mMessage.
channel == inChannel) ||
996 template <
class SerialPort,
class Settings>
999 mPendingMessageIndex = 0;
1000 mPendingMessageExpectedLenght = 0;
1010 template <
class SerialPort,
class Settings>
1013 return mMessage.
type ;
1021 template <
class SerialPort,
class Settings>
1028 template <
class SerialPort,
class Settings>
1031 return mMessage.
data1 ;
1035 template <
class SerialPort,
class Settings>
1038 return mMessage.
data2 ;
1045 template <
class SerialPort,
class Settings>
1056 template <
class SerialPort,
class Settings>
1063 template <
class SerialPort,
class Settings>
1066 return mMessage.
valid ;
1071 template <
class SerialPort,
class Settings>
1074 return mInputChannel;
1081 template <
class SerialPort,
class Settings>
1084 mInputChannel = inChannel;
1094 template <
class SerialPort,
class Settings>
1097 if ((inStatus < 0x80) ||
1098 (inStatus == 0xf4) ||
1099 (inStatus == 0xf5) ||
1100 (inStatus == 0xf9) ||
1106 if (inStatus < 0xf0)
1117 template <
class SerialPort,
class Settings>
1120 return (inStatus & 0x0f) + 1;
1123 template <
class SerialPort,
class Settings>
1166 template <
class SerialPort,
class Settings>
1171 case NoteOff : mNoteOffCallback = 0;
break ;
1172 case NoteOn : mNoteOnCallback = 0;
break ;
1177 case PitchBend : mPitchBendCallback = 0;
break ;
1181 case SongSelect : mSongSelectCallback = 0;
break ;
1182 case TuneRequest : mTuneRequestCallback = 0;
break ;
1183 case Clock : mClockCallback = 0;
break ;
1184 case Start : mStartCallback = 0;
break ;
1185 case Continue : mContinueCallback = 0;
break ;
1186 case Stop : mStopCallback = 0;
break ;
1188 case SystemReset : mSystemResetCallback = 0;
break ;
1197 template <
class SerialPort,
class Settings>
1201 switch (mMessage.
type )
1204 case NoteOff :
if (mNoteOffCallback != 0) mNoteOffCallback(mMessage.
channel , mMessage.
data1 , mMessage.
data2 );
break ;
1205 case NoteOn :
if (mNoteOnCallback != 0) mNoteOnCallback(mMessage.
channel , mMessage.
data1 , mMessage.
data2 );
break ;
1208 case Clock :
if (mClockCallback != 0) mClockCallback();
break ;
1209 case Start :
if (mStartCallback != 0) mStartCallback();
break ;
1210 case Continue :
if (mContinueCallback != 0) mContinueCallback();
break ;
1211 case Stop :
if (mStopCallback != 0) mStopCallback();
break ;
1212 case ActiveSensing :
if (mActiveSensingCallback != 0) mActiveSensingCallback();
break ;
1224 case TimeCodeQuarterFrame :
if (mTimeCodeQuarterFrameCallback != 0) mTimeCodeQuarterFrameCallback(mMessage.
data1 );
break ;
1225 case SongPosition :
if (mSongPositionCallback != 0) mSongPositionCallback((mMessage.
data1 & 0x7f) | ((mMessage.
data2 & 0x7f) << 7));
break ;
1226 case SongSelect :
if (mSongSelectCallback != 0) mSongSelectCallback(mMessage.
data1 );
break ;
1227 case TuneRequest :
if (mTuneRequestCallback != 0) mTuneRequestCallback();
break ;
1229 case SystemReset :
if (mSystemResetCallback != 0) mSystemResetCallback();
break ;
1252 template <
class SerialPort,
class Settings>
1255 mThruFilterMode = inThruFilterMode;
1256 mThruActivated = mThruFilterMode !=
Thru::Off ;
1259 template <
class SerialPort,
class Settings>
1262 return mThruFilterMode;
1265 template <
class SerialPort,
class Settings>
1268 return mThruActivated;
1271 template <
class SerialPort,
class Settings>
1274 mThruActivated =
true ;
1275 mThruFilterMode = inThruFilterMode;
1278 template <
class SerialPort,
class Settings>
1281 mThruActivated =
false ;
1293 template <
class SerialPort,
class Settings>
1297 if (!mThruActivated || (mThruFilterMode ==
Thru::Off ))
1303 const bool filter_condition = ((mMessage.
channel == inChannel) ||
1307 switch (mThruFilterMode)
1317 if (filter_condition)
1327 if (!filter_condition)
1343 switch (mMessage.
type )
void setHandleProgramChange(void(*fptr)(byte channel, byte number))
-
System Common - Song Position Pointer.
-
void disconnectCallbackFromType(MidiType inType)
Detach an external function from the given type.
-
-
System Common - Song Select.
-
void setHandleNoteOn(void(*fptr)(byte channel, byte note, byte velocity))
-
void sendSongSelect(DataByte inSongNumber)
Send a Song Select message.
-
void setThruFilterMode(Thru::Mode inThruFilterMode)
Set the filter for thru mirroring.
-
-
void sendSongPosition(unsigned inBeats)
Send a Song Position Pointer message.
-
Non-Registered Parameter Number (MSB)
-
void turnThruOn(Thru::Mode inThruFilterMode=Thru::Full)
-
#define MIDI_PITCHBEND_MAX
-
-
-
-
void beginRpn(unsigned inNumber, Channel inChannel)
Start a Registered Parameter Number frame.
-
static const unsigned sSysExMaxSize
-
System Real Time - Timing Clock.
-
void sendProgramChange(DataByte inProgramNumber, Channel inChannel)
Send a Program Change message.
-
MidiType getType() const
Get the last received message's type.
-
-
-
DataByte getData2() const
Get the second data byte of the last received message.
-
-
#define BEGIN_MIDI_NAMESPACE
-
-
System Common - MIDI Time Code Quarter Frame.
-
Thru disabled (nothing passes through).
-
#define MIDI_PITCHBEND_MIN
-
DataByte sysexArray[sSysExMaxSize]
-
Channel getChannel() const
Get the channel of the message stored in the structure.
-
void setHandleSystemExclusive(void(*fptr)(byte *array, unsigned size))
-
-
#define END_MIDI_NAMESPACE
-
-
void setHandleSongSelect(void(*fptr)(byte songnumber))
-
unsigned getSysExArrayLength() const
Get the lenght of the System Exclusive array.
-
Only the messages on the Input Channel will be sent back.
-
bool read()
Read messages from the serial port using the main input channel.
-
DataByte getData1() const
Get the first data byte of the last received message.
-
void setHandleClock(void(*fptr)(void))
-
Channel (monophonic) AfterTouch.
-
-
-
void beginNrpn(unsigned inNumber, Channel inChannel)
Start a Non-Registered Parameter Number frame.
-
Non-Registered Parameter Number (LSB)
-
void begin(Channel inChannel=1)
Call the begin method in the setup() function of the Arduino.
-
void sendRealTime(MidiType inType)
Send a Real Time (one byte) message.
-
static Channel getChannelFromStatusByte(byte inStatus)
Returns channel in the range 1-16.
-
void setHandleStart(void(*fptr)(void))
-
-
System Real Time - Continue.
-
void endRpn(Channel inChannel)
Terminate an RPN frame. This will send a Null Function to deselect the currently selected RPN...
-
#define MIDI_CHANNEL_OMNI
-
void setInputChannel(Channel inChannel)
Set the value for the input MIDI channel.
-
void setHandleSystemReset(void(*fptr)(void))
-
System Real Time - Start.
-
bool getThruState() const
-
Channel getInputChannel() const
-
void endNrpn(Channel inChannel)
Terminate an NRPN frame. This will send a Null Function to deselect the currently selected NRPN...
-
Registered Parameter Number (MSB)
-
-
void sendAfterTouch(DataByte inPressure, Channel inChannel)
Send a MonoPhonic AfterTouch message (applies to all notes)
-
void sendPolyPressure(DataByte inNoteNumber, DataByte inPressure, Channel inChannel) __attribute__((deprecated))
Send a Polyphonic AfterTouch message (applies to a specified note)
-
void sendRpnDecrement(byte inAmount, Channel inChannel)
-
void sendNrpnValue(unsigned inValue, Channel inChannel)
Send a 14-bit value for the currently selected NRPN number.
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
void sendTimeCodeQuarterFrame(DataByte inTypeNibble, DataByte inValuesNibble)
Send a MIDI Time Code Quarter Frame.
-
void sendNrpnDecrement(byte inAmount, Channel inChannel)
-
void setHandleSongPosition(void(*fptr)(unsigned beats))
-
-
-
Control Change / Channel Mode.
-
Thru::Mode getFilterMode() const
-
void sendPitchBend(int inPitchValue, Channel inChannel)
Send a Pitch Bend message using a signed integer value.
-
System Common - Tune Request.
-
static MidiType getTypeFromStatusByte(byte inStatus)
Extract an enumerated MIDI type from a status byte.
-
void setHandleActiveSensing(void(*fptr)(void))
-
-
MidiInterface(SerialPort &inSerial)
Constructor for MidiInterface.
-
static bool isChannelMessage(MidiType inType)
-
-
-
-
void setHandleTimeCodeQuarterFrame(void(*fptr)(byte data))
-
void sendTuneRequest()
Send a Tune Request message.
-
void setHandleContinue(void(*fptr)(void))
-
void sendNrpnIncrement(byte inAmount, Channel inChannel)
-
void sendRpnValue(unsigned inValue, Channel inChannel)
Send a 14-bit value for the currently selected RPN number.
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
-
-
-
void sendSysEx(unsigned inLength, const byte *inArray, bool inArrayContainsBoundaries=false)
Generate and send a System Exclusive frame.
-
void setHandleNoteOff(void(*fptr)(byte channel, byte note, byte velocity))
-
bool check() const
Check if a valid message is stored in the structure.
-
All the messages but the ones on the Input Channel will be sent back.
-
void setHandlePitchBend(void(*fptr)(byte channel, int bend))
-
unsigned getSysExSize() const
-
void setHandleStop(void(*fptr)(void))
-
void sendNoteOn(DataByte inNoteNumber, DataByte inVelocity, Channel inChannel)
Send a Note On message.
-
const byte * getSysExArray() const
Get the System Exclusive byte array.
-
System Real Time - Active Sensing.
-
Fully enabled Thru (every incoming message is sent back).
-
void setHandleTuneRequest(void(*fptr)(void))
-
-
System Real Time - System Reset.
-
-
~MidiInterface()
Destructor for MidiInterface.
-
void setHandleControlChange(void(*fptr)(byte channel, byte number, byte value))
-
void sendNoteOff(DataByte inNoteNumber, DataByte inVelocity, Channel inChannel)
Send a Note Off message.
-
The main class for MIDI handling. It is templated over the type of serial port to provide abstraction...
-
-
void setHandleAfterTouchChannel(void(*fptr)(byte channel, byte pressure))
-
Registered Parameter Number (LSB)
-
void sendRpnIncrement(byte inAmount, Channel inChannel)
-
void setHandleAfterTouchPoly(void(*fptr)(byte channel, byte note, byte pressure))
+
Go to the documentation of this file. 33 template <
class SerialPort,
class Settings>
39 , mPendingMessageExpectedLenght(0)
40 , mPendingMessageIndex(0)
41 , mCurrentRpnNumber(0xffff)
42 , mCurrentNrpnNumber(0xffff)
43 , mThruActivated(true)
44 , mThruFilterMode(
Thru ::Full)
48 mAfterTouchPolyCallback = 0;
49 mControlChangeCallback = 0;
50 mProgramChangeCallback = 0;
51 mAfterTouchChannelCallback = 0;
52 mPitchBendCallback = 0;
53 mSystemExclusiveCallback = 0;
54 mTimeCodeQuarterFrameCallback = 0;
55 mSongPositionCallback = 0;
56 mSongSelectCallback = 0;
57 mTuneRequestCallback = 0;
60 mContinueCallback = 0;
62 mActiveSensingCallback = 0;
63 mSystemResetCallback = 0;
70 template <
class SerialPort,
class Settings>
83 template <
class SerialPort,
class Settings>
88 mSerial.
template open<Settings::BaudRate>();
90 mSerial.begin(Settings::BaudRate);
93 mInputChannel = inChannel;
97 mPendingMessageIndex = 0;
98 mPendingMessageExpectedLenght = 0;
100 mCurrentRpnNumber = 0xffff;
101 mCurrentNrpnNumber = 0xffff;
103 mMessage.
valid =
false ;
110 mThruActivated =
true ;
132 template <
class SerialPort,
class Settings>
152 const StatusByte status = getStatus(inType, inChannel);
154 if (Settings::UseRunningStatus)
156 if (mRunningStatus_TX != status)
159 mRunningStatus_TX = status;
160 mSerial.write(mRunningStatus_TX);
166 mSerial.write(status);
170 mSerial.write(inData1);
173 mSerial.write(inData2);
193 template <
class SerialPort,
class Settings>
198 send (
NoteOn , inNoteNumber, inVelocity, inChannel);
212 template <
class SerialPort,
class Settings>
217 send (
NoteOff , inNoteNumber, inVelocity, inChannel);
224 template <
class SerialPort,
class Settings>
237 template <
class SerialPort,
class Settings>
252 template <
class SerialPort,
class Settings>
264 template <
class SerialPort,
class Settings>
277 template <
class SerialPort,
class Settings>
291 template <
class SerialPort,
class Settings>
296 send (
PitchBend , (bend & 0x7f), (bend >> 7) & 0x7f, inChannel);
306 template <
class SerialPort,
class Settings>
311 const int value = int(inPitchValue *
double (scale));
324 template <
class SerialPort,
class Settings>
327 bool inArrayContainsBoundaries)
329 const bool writeBeginEndBytes = !inArrayContainsBoundaries;
331 if (writeBeginEndBytes)
336 for (
unsigned i = 0; i < inLength; ++i)
338 mSerial.write(inArray[i]);
341 if (writeBeginEndBytes)
346 if (Settings::UseRunningStatus)
357 template <
class SerialPort,
class Settings>
362 if (Settings::UseRunningStatus)
374 template <
class SerialPort,
class Settings>
378 const byte data = (((inTypeNibble & 0x07) << 4) | (inValuesNibble & 0x0f));
388 template <
class SerialPort,
class Settings>
392 mSerial.write(inData);
394 if (Settings::UseRunningStatus)
403 template <
class SerialPort,
class Settings>
407 mSerial.write(inBeats & 0x7f);
408 mSerial.write((inBeats >> 7) & 0x7f);
410 if (Settings::UseRunningStatus)
417 template <
class SerialPort,
class Settings>
421 mSerial.write(inSongNumber & 0x7f);
423 if (Settings::UseRunningStatus)
435 template <
class SerialPort,
class Settings>
449 mSerial.write((
byte )inType);
461 template <
class SerialPort,
class Settings>
465 if (mCurrentRpnNumber != inNumber)
467 const byte numMsb = 0x7f & (inNumber >> 7);
468 const byte numLsb = 0x7f & inNumber;
471 mCurrentRpnNumber = inNumber;
479 template <
class SerialPort,
class Settings>
483 const byte valMsb = 0x7f & (inValue >> 7);
484 const byte valLsb = 0x7f & inValue;
494 template <
class SerialPort,
class Settings>
506 template <
class SerialPort,
class Settings>
516 template <
class SerialPort,
class Settings>
527 template <
class SerialPort,
class Settings>
532 mCurrentRpnNumber = 0xffff;
541 template <
class SerialPort,
class Settings>
545 if (mCurrentNrpnNumber != inNumber)
547 const byte numMsb = 0x7f & (inNumber >> 7);
548 const byte numLsb = 0x7f & inNumber;
551 mCurrentNrpnNumber = inNumber;
559 template <
class SerialPort,
class Settings>
563 const byte valMsb = 0x7f & (inValue >> 7);
564 const byte valLsb = 0x7f & inValue;
574 template <
class SerialPort,
class Settings>
586 template <
class SerialPort,
class Settings>
596 template <
class SerialPort,
class Settings>
607 template <
class SerialPort,
class Settings>
612 mCurrentNrpnNumber = 0xffff;
619 template <
class SerialPort,
class Settings>
623 return ((
byte )inType | ((inChannel - 1) & 0x0f));
642 template <
class SerialPort,
class Settings>
645 return read (mInputChannel);
650 template <
class SerialPort,
class Settings>
659 handleNullVelocityNoteOnAsNoteOff();
660 const bool channelMatch = inputFilter(inChannel);
667 thruFilter(inChannel);
675 template <
class SerialPort,
class Settings>
678 if (mSerial.available() == 0)
691 const byte extracted = mSerial.read();
694 if (extracted == 0xf9 || extracted == 0xfd)
696 if (Settings::Use1ByteParsing)
706 if (mPendingMessageIndex == 0)
709 mPendingMessage[0] = extracted;
718 if (extracted < 0x80)
720 mPendingMessage[0] = mRunningStatus_RX;
721 mPendingMessage[1] = extracted;
722 mPendingMessageIndex = 1;
744 mMessage.
valid =
true ;
748 mPendingMessageIndex = 0;
749 mPendingMessageExpectedLenght = 0;
759 mPendingMessageExpectedLenght = 2;
769 mPendingMessageExpectedLenght = 3;
788 if (mPendingMessageIndex >= (mPendingMessageExpectedLenght - 1))
793 mMessage.
data1 = mPendingMessage[1];
796 mPendingMessageIndex = 0;
797 mPendingMessageExpectedLenght = 0;
798 mMessage.
valid =
true ;
804 mPendingMessageIndex++;
807 if (Settings::Use1ByteParsing)
822 if (extracted >= 0x80)
846 mMessage.
valid =
true ;
854 mMessage.
sysexArray [mPendingMessageIndex++] = 0xf7;
858 mMessage.
data1 = mPendingMessageIndex & 0xff;
859 mMessage.
data2 = mPendingMessageIndex >> 8;
861 mMessage.
valid =
true ;
880 mMessage.
sysexArray [mPendingMessageIndex] = extracted;
882 mPendingMessage[mPendingMessageIndex] = extracted;
885 if (mPendingMessageIndex >= (mPendingMessageExpectedLenght - 1))
903 mMessage.
data1 = mPendingMessage[1];
906 mMessage.
data2 = mPendingMessageExpectedLenght == 3 ? mPendingMessage[2] : 0;
909 mPendingMessageIndex = 0;
910 mPendingMessageExpectedLenght = 0;
912 mMessage.
valid =
true ;
915 switch (mMessage.
type )
925 mRunningStatus_RX = mPendingMessage[0];
938 mPendingMessageIndex++;
940 if (Settings::Use1ByteParsing)
955 template <
class SerialPort,
class Settings>
958 if (Settings::HandleNullVelocityNoteOnAsNoteOff &&
966 template <
class SerialPort,
class Settings>
976 if ((mMessage.
channel == inChannel) ||
995 template <
class SerialPort,
class Settings>
998 mPendingMessageIndex = 0;
999 mPendingMessageExpectedLenght = 0;
1009 template <
class SerialPort,
class Settings>
1012 return mMessage.
type ;
1020 template <
class SerialPort,
class Settings>
1027 template <
class SerialPort,
class Settings>
1030 return mMessage.
data1 ;
1034 template <
class SerialPort,
class Settings>
1037 return mMessage.
data2 ;
1044 template <
class SerialPort,
class Settings>
1055 template <
class SerialPort,
class Settings>
1062 template <
class SerialPort,
class Settings>
1065 return mMessage.
valid ;
1070 template <
class SerialPort,
class Settings>
1073 return mInputChannel;
1080 template <
class SerialPort,
class Settings>
1083 mInputChannel = inChannel;
1093 template <
class SerialPort,
class Settings>
1096 if ((inStatus < 0x80) ||
1097 (inStatus == 0xf4) ||
1098 (inStatus == 0xf5) ||
1099 (inStatus == 0xf9) ||
1105 if (inStatus < 0xf0)
1116 template <
class SerialPort,
class Settings>
1119 return (inStatus & 0x0f) + 1;
1122 template <
class SerialPort,
class Settings>
1165 template <
class SerialPort,
class Settings>
1170 case NoteOff : mNoteOffCallback = 0;
break ;
1171 case NoteOn : mNoteOnCallback = 0;
break ;
1176 case PitchBend : mPitchBendCallback = 0;
break ;
1180 case SongSelect : mSongSelectCallback = 0;
break ;
1181 case TuneRequest : mTuneRequestCallback = 0;
break ;
1182 case Clock : mClockCallback = 0;
break ;
1183 case Start : mStartCallback = 0;
break ;
1184 case Continue : mContinueCallback = 0;
break ;
1185 case Stop : mStopCallback = 0;
break ;
1187 case SystemReset : mSystemResetCallback = 0;
break ;
1196 template <
class SerialPort,
class Settings>
1200 switch (mMessage.
type )
1203 case NoteOff :
if (mNoteOffCallback != 0) mNoteOffCallback(mMessage.
channel , mMessage.
data1 , mMessage.
data2 );
break ;
1204 case NoteOn :
if (mNoteOnCallback != 0) mNoteOnCallback(mMessage.
channel , mMessage.
data1 , mMessage.
data2 );
break ;
1207 case Clock :
if (mClockCallback != 0) mClockCallback();
break ;
1208 case Start :
if (mStartCallback != 0) mStartCallback();
break ;
1209 case Continue :
if (mContinueCallback != 0) mContinueCallback();
break ;
1210 case Stop :
if (mStopCallback != 0) mStopCallback();
break ;
1211 case ActiveSensing :
if (mActiveSensingCallback != 0) mActiveSensingCallback();
break ;
1223 case TimeCodeQuarterFrame :
if (mTimeCodeQuarterFrameCallback != 0) mTimeCodeQuarterFrameCallback(mMessage.
data1 );
break ;
1224 case SongPosition :
if (mSongPositionCallback != 0) mSongPositionCallback((mMessage.
data1 & 0x7f) | ((mMessage.
data2 & 0x7f) << 7));
break ;
1225 case SongSelect :
if (mSongSelectCallback != 0) mSongSelectCallback(mMessage.
data1 );
break ;
1226 case TuneRequest :
if (mTuneRequestCallback != 0) mTuneRequestCallback();
break ;
1228 case SystemReset :
if (mSystemResetCallback != 0) mSystemResetCallback();
break ;
1251 template <
class SerialPort,
class Settings>
1254 mThruFilterMode = inThruFilterMode;
1255 mThruActivated = mThruFilterMode !=
Thru::Off ;
1258 template <
class SerialPort,
class Settings>
1261 return mThruFilterMode;
1264 template <
class SerialPort,
class Settings>
1267 return mThruActivated;
1270 template <
class SerialPort,
class Settings>
1273 mThruActivated =
true ;
1274 mThruFilterMode = inThruFilterMode;
1277 template <
class SerialPort,
class Settings>
1280 mThruActivated =
false ;
1292 template <
class SerialPort,
class Settings>
1296 if (!mThruActivated || (mThruFilterMode ==
Thru::Off ))
1302 const bool filter_condition = ((mMessage.
channel == inChannel) ||
1306 switch (mThruFilterMode)
1316 if (filter_condition)
1326 if (!filter_condition)
1342 switch (mMessage.
type )
void setHandleProgramChange(void(*fptr)(byte channel, byte number))
+
System Common - Song Position Pointer.
+
void disconnectCallbackFromType(MidiType inType)
Detach an external function from the given type.
+
+
System Common - Song Select.
+
void setHandleNoteOn(void(*fptr)(byte channel, byte note, byte velocity))
+
void sendSongSelect(DataByte inSongNumber)
Send a Song Select message.
+
void setThruFilterMode(Thru::Mode inThruFilterMode)
Set the filter for thru mirroring.
+
+
void sendSongPosition(unsigned inBeats)
Send a Song Position Pointer message.
+
Non-Registered Parameter Number (MSB)
+
void turnThruOn(Thru::Mode inThruFilterMode=Thru::Full)
+
#define MIDI_PITCHBEND_MAX
+
+
+
+
void beginRpn(unsigned inNumber, Channel inChannel)
Start a Registered Parameter Number frame.
+
static const unsigned sSysExMaxSize
+
System Real Time - Timing Clock.
+
void sendProgramChange(DataByte inProgramNumber, Channel inChannel)
Send a Program Change message.
+
MidiType getType() const
Get the last received message's type.
+
+
+
DataByte getData2() const
Get the second data byte of the last received message.
+
+
#define BEGIN_MIDI_NAMESPACE
+
+
System Common - MIDI Time Code Quarter Frame.
+
Thru disabled (nothing passes through).
+
#define MIDI_PITCHBEND_MIN
+
DataByte sysexArray[sSysExMaxSize]
+
Channel getChannel() const
Get the channel of the message stored in the structure.
+
void setHandleSystemExclusive(void(*fptr)(byte *array, unsigned size))
+
+
#define END_MIDI_NAMESPACE
+
+
void setHandleSongSelect(void(*fptr)(byte songnumber))
+
unsigned getSysExArrayLength() const
Get the lenght of the System Exclusive array.
+
Only the messages on the Input Channel will be sent back.
+
bool read()
Read messages from the serial port using the main input channel.
+
DataByte getData1() const
Get the first data byte of the last received message.
+
void setHandleClock(void(*fptr)(void))
+
Channel (monophonic) AfterTouch.
+
+
+
void beginNrpn(unsigned inNumber, Channel inChannel)
Start a Non-Registered Parameter Number frame.
+
Non-Registered Parameter Number (LSB)
+
void begin(Channel inChannel=1)
Call the begin method in the setup() function of the Arduino.
+
void sendRealTime(MidiType inType)
Send a Real Time (one byte) message.
+
static Channel getChannelFromStatusByte(byte inStatus)
Returns channel in the range 1-16.
+
void setHandleStart(void(*fptr)(void))
+
+
System Real Time - Continue.
+
void endRpn(Channel inChannel)
Terminate an RPN frame. This will send a Null Function to deselect the currently selected RPN...
+
#define MIDI_CHANNEL_OMNI
+
void setInputChannel(Channel inChannel)
Set the value for the input MIDI channel.
+
void setHandleSystemReset(void(*fptr)(void))
+
System Real Time - Start.
+
bool getThruState() const
+
Channel getInputChannel() const
+
void endNrpn(Channel inChannel)
Terminate an NRPN frame. This will send a Null Function to deselect the currently selected NRPN...
+
Registered Parameter Number (MSB)
+
+
void sendAfterTouch(DataByte inPressure, Channel inChannel)
Send a MonoPhonic AfterTouch message (applies to all notes)
+
void sendPolyPressure(DataByte inNoteNumber, DataByte inPressure, Channel inChannel) __attribute__((deprecated))
Send a Polyphonic AfterTouch message (applies to a specified note)
+
void sendRpnDecrement(byte inAmount, Channel inChannel)
+
void sendNrpnValue(unsigned inValue, Channel inChannel)
Send a 14-bit value for the currently selected NRPN number.
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
void sendTimeCodeQuarterFrame(DataByte inTypeNibble, DataByte inValuesNibble)
Send a MIDI Time Code Quarter Frame.
+
void sendNrpnDecrement(byte inAmount, Channel inChannel)
+
void setHandleSongPosition(void(*fptr)(unsigned beats))
+
+
+
Control Change / Channel Mode.
+
Thru::Mode getFilterMode() const
+
void sendPitchBend(int inPitchValue, Channel inChannel)
Send a Pitch Bend message using a signed integer value.
+
System Common - Tune Request.
+
static MidiType getTypeFromStatusByte(byte inStatus)
Extract an enumerated MIDI type from a status byte.
+
void setHandleActiveSensing(void(*fptr)(void))
+
+
MidiInterface(SerialPort &inSerial)
Constructor for MidiInterface.
+
static bool isChannelMessage(MidiType inType)
+
+
+
+
void setHandleTimeCodeQuarterFrame(void(*fptr)(byte data))
+
void sendTuneRequest()
Send a Tune Request message.
+
void setHandleContinue(void(*fptr)(void))
+
void sendNrpnIncrement(byte inAmount, Channel inChannel)
+
void sendRpnValue(unsigned inValue, Channel inChannel)
Send a 14-bit value for the currently selected RPN number.
+
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
+
+
+
void sendSysEx(unsigned inLength, const byte *inArray, bool inArrayContainsBoundaries=false)
Generate and send a System Exclusive frame.
+
void setHandleNoteOff(void(*fptr)(byte channel, byte note, byte velocity))
+
bool check() const
Check if a valid message is stored in the structure.
+
All the messages but the ones on the Input Channel will be sent back.
+
void setHandlePitchBend(void(*fptr)(byte channel, int bend))
+
unsigned getSysExSize() const
+
void setHandleStop(void(*fptr)(void))
+
void sendNoteOn(DataByte inNoteNumber, DataByte inVelocity, Channel inChannel)
Send a Note On message.
+
const byte * getSysExArray() const
Get the System Exclusive byte array.
+
System Real Time - Active Sensing.
+
Fully enabled Thru (every incoming message is sent back).
+
void setHandleTuneRequest(void(*fptr)(void))
+
+
System Real Time - System Reset.
+
+
~MidiInterface()
Destructor for MidiInterface.
+
void setHandleControlChange(void(*fptr)(byte channel, byte number, byte value))
+
void sendNoteOff(DataByte inNoteNumber, DataByte inVelocity, Channel inChannel)
Send a Note Off message.
+
The main class for MIDI handling. It is templated over the type of serial port to provide abstraction...
+
+
void setHandleAfterTouchChannel(void(*fptr)(byte channel, byte pressure))
+
Registered Parameter Number (LSB)
+
void sendRpnIncrement(byte inAmount, Channel inChannel)
+
void setHandleAfterTouchPoly(void(*fptr)(byte channel, byte note, byte pressure))
diff --git a/a00006.html b/a00006.html
deleted file mode 100644
index 27f88e5..0000000
--- a/a00006.html
+++ /dev/null
@@ -1,117 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: MIDI_Bench.ino
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/a00008.html b/a00008.html
index 3b35699..df553d9 100644
--- a/a00008.html
+++ b/a00008.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -259,8 +259,7 @@ Functions
MIDI Library for the Arduino - Definitions.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
+
Project Arduino MIDI Library
Author Francois Best
Date 24/02/11 MIT - Copyright (c) 2015 Francois Best
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
@@ -280,7 +279,7 @@ Functions
@@ -296,7 +295,7 @@ Functions
@@ -343,7 +342,7 @@ Functions
MIDI_CREATE_INSTANCE
-Definition at line 236 of file midi_Defs.h .
+Definition at line 235 of file midi_Defs.h .
@@ -364,7 +363,7 @@ Functions
Create an instance of the library with default name, serial port and settings, for compatibility with sketches written with pre-v4.2 MIDI Lib, or if you don't bother using custom names, serial port or settings.
-Definition at line 227 of file midi_Defs.h .
+Definition at line 226 of file midi_Defs.h .
@@ -402,7 +401,7 @@ Functions
Create an instance of the library attached to a serial port. You can use HardwareSerial or SoftwareSerial for the serial port. Example: MIDI_CREATE_INSTANCE(HardwareSerial, Serial2, midi2) ; Then call midi2.begin(), midi2.read() etc..
-Definition at line 215 of file midi_Defs.h .
+Definition at line 214 of file midi_Defs.h .
@@ -418,7 +417,7 @@ Functions
@@ -434,7 +433,7 @@ Functions
@@ -450,7 +449,7 @@ Functions
@@ -466,7 +465,7 @@ Functions
@@ -482,7 +481,7 @@ Functions
@@ -498,7 +497,7 @@ Functions
@@ -515,7 +514,7 @@ Functions
@@ -531,7 +530,7 @@ Functions
@@ -547,7 +546,7 @@ Functions
@@ -563,7 +562,7 @@ Functions
@@ -579,7 +578,7 @@ Functions
@@ -676,64 +675,64 @@ Functions
PolyModeOn
-Definition at line 120 of file midi_Defs.h .
-
-
-
-
-
Non-Registered Parameter Number (MSB)
-
-
-
-
-
-
-
-
-
-
-
-
Synth: Sound Variation FX: Exciter On/Off.
-
-
-
Non-Registered Parameter Number (LSB)
-
-
Synth: Release Time FX: Distortion On/Off.
-
Synth: Attack Time FX: EQ On/Off.
-
-
-
Registered Parameter Number (MSB)
-
-
-
-
-
-
Synth: Harmonic Content FX: Compressor On/Off.
-
-
-
-
-
Synth: Vibrato Rate FX: Delay On/Off.
-
-
-
-
-
-
Synth: Decay Time FX: Reverb On/Off.
-
-
-
Synth: Brightness FX: Expander On/Off.
-
-
-
-
Synth: Undefined FX: Special Effects On/Off.
-
Synth: Vibrato Depth FX: Pitch Transpose On/Off.
-
-
-
-
Registered Parameter Number (LSB)
-
Synth: Vibrato Delay FX: Flange/Chorus On/Off.
-
+
Definition at line 119 of file midi_Defs.h .
+
+
+
+
+
Non-Registered Parameter Number (MSB)
+
+
+
+
+
+
+
+
+
+
+
+
Synth: Sound Variation FX: Exciter On/Off.
+
+
+
Non-Registered Parameter Number (LSB)
+
+
Synth: Release Time FX: Distortion On/Off.
+
Synth: Attack Time FX: EQ On/Off.
+
+
+
Registered Parameter Number (MSB)
+
+
+
+
+
+
Synth: Harmonic Content FX: Compressor On/Off.
+
+
+
+
+
Synth: Vibrato Rate FX: Delay On/Off.
+
+
+
+
+
+
Synth: Decay Time FX: Reverb On/Off.
+
+
+
Synth: Brightness FX: Expander On/Off.
+
+
+
+
Synth: Undefined FX: Special Effects On/Off.
+
Synth: Vibrato Depth FX: Pitch Transpose On/Off.
+
+
+
+
Registered Parameter Number (LSB)
+
Synth: Vibrato Delay FX: Flange/Chorus On/Off.
+
@@ -790,26 +789,26 @@ Functions
-Definition at line 66 of file midi_Defs.h .
-System Common - Song Position Pointer.
-
-
System Common - Song Select.
-
-
-
System Real Time - Timing Clock.
-
System Common - MIDI Time Code Quarter Frame.
-
-
Channel (monophonic) AfterTouch.
-
-
System Real Time - Continue.
-
System Real Time - Start.
-
-
Control Change / Channel Mode.
-
System Common - Tune Request.
-
-
System Real Time - Active Sensing.
-
-
System Real Time - System Reset.
+
Definition at line 65 of file midi_Defs.h .
+
System Common - Song Position Pointer.
+
+
System Common - Song Select.
+
+
+
System Real Time - Timing Clock.
+
System Common - MIDI Time Code Quarter Frame.
+
+
Channel (monophonic) AfterTouch.
+
+
System Real Time - Continue.
+
System Real Time - Start.
+
+
Control Change / Channel Mode.
+
System Common - Tune Request.
+
+
System Real Time - Active Sensing.
+
+
System Real Time - System Reset.
@@ -831,11 +830,11 @@ Functions
Deprecated: use Thru::Mode instead. Will be removed in v5.0.
-
Definition at line 106 of file midi_Defs.h .
-
Thru disabled (nothing passes through).
-
Only the messages on the Input Channel will be sent back.
-
All the messages but the ones on the Input Channel will be sent back.
-
Fully enabled Thru (every incoming message is sent back).
+
Definition at line 105 of file midi_Defs.h .
+
Thru disabled (nothing passes through).
+
Only the messages on the Input Channel will be sent back.
+
All the messages but the ones on the Input Channel will be sent back.
+
Fully enabled Thru (every incoming message is sent back).
@@ -845,7 +844,7 @@ Functions
diff --git a/a00008_source.html b/a00008_source.html
index 6ca2773..e7ac925 100644
--- a/a00008_source.html
+++ b/a00008_source.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -84,108 +84,108 @@ $(document).ready(function(){initNavTree('a00008_source.html','');});
midi_Defs.h
-
Go to the documentation of this file. 42 #define MIDI_LIBRARY_VERSION 0x040300 43 #define MIDI_LIBRARY_VERSION_MAJOR 4 44 #define MIDI_LIBRARY_VERSION_MINOR 3 45 #define MIDI_LIBRARY_VERSION_PATCH 0 49 #define MIDI_CHANNEL_OMNI 0 50 #define MIDI_CHANNEL_OFF 17 // and over 52 #define MIDI_PITCHBEND_MIN -8192 53 #define MIDI_PITCHBEND_MAX 8191 198 PitchBendSensitivity = 0x0000,
199 ChannelFineTuning = 0x0001,
200 ChannelCoarseTuning = 0x0002,
201 SelectTuningProgram = 0x0003,
202 SelectTuningBank = 0x0004,
203 ModulationDepthRange = 0x0005,
204 NullFunction = (0x7f << 7) + 0x7f,
215 #define MIDI_CREATE_INSTANCE(Type, SerialPort, Name) \ 216 midi::MidiInterface<Type> Name((Type&)SerialPort); 218 #if defined(ARDUINO_SAM_DUE) || defined(USBCON) 220 #define MIDI_CREATE_DEFAULT_INSTANCE() \ 221 MIDI_CREATE_INSTANCE(HardwareSerial, Serial1, MIDI); 227 #define MIDI_CREATE_DEFAULT_INSTANCE() \ 228 MIDI_CREATE_INSTANCE(HardwareSerial, Serial, MIDI); 236 #define MIDI_CREATE_CUSTOM_INSTANCE(Type, SerialPort, Name, Settings) \ 237 midi::MidiInterface<Type, Settings> Name((Type&)SerialPort); System Common - Song Position Pointer.
-
-
-
-
System Common - Song Select.
-
-
-
-
Non-Registered Parameter Number (MSB)
-
-
-
-
-
System Real Time - Timing Clock.
-
-
-
-
-
-
#define BEGIN_MIDI_NAMESPACE
-
-
-
System Common - MIDI Time Code Quarter Frame.
-
Thru disabled (nothing passes through).
-
-
-
-
#define END_MIDI_NAMESPACE
-
-
-
RegisteredParameterNumbers
-
Only the messages on the Input Channel will be sent back.
-
Channel (monophonic) AfterTouch.
-
-
Synth: Sound Variation FX: Exciter On/Off.
-
-
-
Non-Registered Parameter Number (LSB)
-
-
-
System Real Time - Continue.
-
Synth: Release Time FX: Distortion On/Off.
-
Synth: Attack Time FX: EQ On/Off.
-
-
System Real Time - Start.
-
+
Go to the documentation of this file. 41 #define MIDI_LIBRARY_VERSION 0x040300 42 #define MIDI_LIBRARY_VERSION_MAJOR 4 43 #define MIDI_LIBRARY_VERSION_MINOR 3 44 #define MIDI_LIBRARY_VERSION_PATCH 0 48 #define MIDI_CHANNEL_OMNI 0 49 #define MIDI_CHANNEL_OFF 17 // and over 51 #define MIDI_PITCHBEND_MIN -8192 52 #define MIDI_PITCHBEND_MAX 8191 197 PitchBendSensitivity = 0x0000,
198 ChannelFineTuning = 0x0001,
199 ChannelCoarseTuning = 0x0002,
200 SelectTuningProgram = 0x0003,
201 SelectTuningBank = 0x0004,
202 ModulationDepthRange = 0x0005,
203 NullFunction = (0x7f << 7) + 0x7f,
214 #define MIDI_CREATE_INSTANCE(Type, SerialPort, Name) \ 215 midi::MidiInterface<Type> Name((Type&)SerialPort); 217 #if defined(ARDUINO_SAM_DUE) || defined(USBCON) 219 #define MIDI_CREATE_DEFAULT_INSTANCE() \ 220 MIDI_CREATE_INSTANCE(HardwareSerial, Serial1, MIDI); 226 #define MIDI_CREATE_DEFAULT_INSTANCE() \ 227 MIDI_CREATE_INSTANCE(HardwareSerial, Serial, MIDI); 235 #define MIDI_CREATE_CUSTOM_INSTANCE(Type, SerialPort, Name, Settings) \ 236 midi::MidiInterface<Type, Settings> Name((Type&)SerialPort); System Common - Song Position Pointer.
+
+
+
+
System Common - Song Select.
+
+
+
+
Non-Registered Parameter Number (MSB)
+
+
+
+
+
System Real Time - Timing Clock.
+
+
+
+
+
+
#define BEGIN_MIDI_NAMESPACE
+
+
+
System Common - MIDI Time Code Quarter Frame.
+
Thru disabled (nothing passes through).
+
+
+
+
#define END_MIDI_NAMESPACE
+
+
+
RegisteredParameterNumbers
+
Only the messages on the Input Channel will be sent back.
+
Channel (monophonic) AfterTouch.
+
+
Synth: Sound Variation FX: Exciter On/Off.
+
+
+
Non-Registered Parameter Number (LSB)
+
+
+
System Real Time - Continue.
+
Synth: Release Time FX: Distortion On/Off.
+
Synth: Attack Time FX: EQ On/Off.
+
+
System Real Time - Start.
+
MIDI Library for the Arduino - Namespace declaration.
-
Registered Parameter Number (MSB)
-
-
enum __attribute__((deprecated)) MidiFilterMode
-
-
-
-
-
Synth: Harmonic Content FX: Compressor On/Off.
-
-
-
-
-
Control Change / Channel Mode.
-
-
System Common - Tune Request.
-
-
-
-
-
-
-
Synth: Vibrato Rate FX: Delay On/Off.
-
-
-
-
-
-
Synth: Decay Time FX: Reverb On/Off.
-
All the messages but the ones on the Input Channel will be sent back.
-
-
-
Synth: Brightness FX: Expander On/Off.
-
System Real Time - Active Sensing.
-
Fully enabled Thru (every incoming message is sent back).
-
MidiControlChangeNumber
Enumeration of Control Change command numbers. See the detailed controllers numbers & description her...
-
-
-
-
System Real Time - System Reset.
-
-
Synth: Undefined FX: Special Effects On/Off.
-
Synth: Vibrato Depth FX: Pitch Transpose On/Off.
-
-
-
-
Registered Parameter Number (LSB)
-
Synth: Vibrato Delay FX: Flange/Chorus On/Off.
-
+
Registered Parameter Number (MSB)
+
+
enum __attribute__((deprecated)) MidiFilterMode
+
+
+
+
+
Synth: Harmonic Content FX: Compressor On/Off.
+
+
+
+
+
Control Change / Channel Mode.
+
+
System Common - Tune Request.
+
+
+
+
+
+
+
Synth: Vibrato Rate FX: Delay On/Off.
+
+
+
+
+
+
Synth: Decay Time FX: Reverb On/Off.
+
All the messages but the ones on the Input Channel will be sent back.
+
+
+
Synth: Brightness FX: Expander On/Off.
+
System Real Time - Active Sensing.
+
Fully enabled Thru (every incoming message is sent back).
+
MidiControlChangeNumber
Enumeration of Control Change command numbers. See the detailed controllers numbers & description her...
+
+
+
+
System Real Time - System Reset.
+
+
Synth: Undefined FX: Special Effects On/Off.
+
Synth: Vibrato Depth FX: Pitch Transpose On/Off.
+
+
+
+
Registered Parameter Number (LSB)
+
Synth: Vibrato Delay FX: Flange/Chorus On/Off.
+
diff --git a/a00010.html b/a00010.html
deleted file mode 100644
index e205ca3..0000000
--- a/a00010.html
+++ /dev/null
@@ -1,117 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: MIDI_Input.ino
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/a00011.html b/a00011.html
index fd3457e..325795d 100644
--- a/a00011.html
+++ b/a00011.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -101,8 +101,7 @@ Classes
MIDI Library for the Arduino - Message struct definition.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
+
Project Arduino MIDI Library
Author Francois Best
Date 11/06/14 MIT - Copyright (c) 2015 Francois Best
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
@@ -115,7 +114,7 @@ Classes
diff --git a/a00011_source.html b/a00011_source.html
index 44d16b0..03dbe84 100644
--- a/a00011_source.html
+++ b/a00011_source.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -84,31 +84,31 @@ $(document).ready(function(){initNavTree('a00011_source.html','');});
midi_Message.h
-
Go to the documentation of this file. 39 template <
unsigned SysExMaxSize>
94 const unsigned size = unsigned(data2) << 8 |
data1 ;
95 return size > sSysExMaxSize ? sSysExMaxSize : size;
-
static const unsigned sSysExMaxSize
-
-
-
#define BEGIN_MIDI_NAMESPACE
-
DataByte sysexArray[sSysExMaxSize]
-
#define END_MIDI_NAMESPACE
-
-
+
Go to the documentation of this file. 38 template <
unsigned SysExMaxSize>
93 const unsigned size = unsigned(data2) << 8 |
data1 ;
94 return size > sSysExMaxSize ? sSysExMaxSize : size;
+
static const unsigned sSysExMaxSize
+
+
+
#define BEGIN_MIDI_NAMESPACE
+
DataByte sysexArray[sSysExMaxSize]
+
#define END_MIDI_NAMESPACE
+
+
MIDI Library for the Arduino - Namespace declaration.
-
-
+
+
MIDI Library for the Arduino - Definitions.
-
-
-
-
unsigned getSysExSize() const
-
+
+
+
+
unsigned getSysExSize() const
+
diff --git a/a00012.html b/a00012.html
deleted file mode 100644
index a995ff4..0000000
--- a/a00012.html
+++ /dev/null
@@ -1,117 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: MIDI_SimpleSynth.ino
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/a00014.html b/a00014.html
index 351a25a..69224b1 100644
--- a/a00014.html
+++ b/a00014.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -105,8 +105,7 @@ Macros
MIDI Library for the Arduino - Namespace declaration.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
+
Project Arduino MIDI Library
Author Francois Best
Date 24/02/11 MIT - Copyright (c) 2015 Francois Best
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
@@ -126,7 +125,7 @@ Macros
@@ -142,7 +141,7 @@ Macros
@@ -158,7 +157,7 @@ Macros
@@ -174,7 +173,7 @@ Macros
@@ -184,7 +183,7 @@ Macros
diff --git a/a00014_source.html b/a00014_source.html
index 2f8d125..376b8f5 100644
--- a/a00014_source.html
+++ b/a00014_source.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -84,15 +84,15 @@ $(document).ready(function(){initNavTree('a00014_source.html','');});
midi_Namespace.h
-
Go to the documentation of this file. 31 #define MIDI_NAMESPACE midi 32 #define BEGIN_MIDI_NAMESPACE namespace MIDI_NAMESPACE { 33 #define END_MIDI_NAMESPACE } 35 #define USING_NAMESPACE_MIDI using namespace MIDI_NAMESPACE; #define BEGIN_MIDI_NAMESPACE
-
#define END_MIDI_NAMESPACE
+
Go to the documentation of this file. 30 #define MIDI_NAMESPACE midi 31 #define BEGIN_MIDI_NAMESPACE namespace MIDI_NAMESPACE { 32 #define END_MIDI_NAMESPACE } 34 #define USING_NAMESPACE_MIDI using namespace MIDI_NAMESPACE; #define BEGIN_MIDI_NAMESPACE
+
#define END_MIDI_NAMESPACE
diff --git a/a00015.html b/a00015.html
deleted file mode 100644
index 85bfb8d..0000000
--- a/a00015.html
+++ /dev/null
@@ -1,273 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: DefaultSettings Struct Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Default Settings for the MIDI Library.
- More...
-
-
#include <midi_Settings.h >
-
-
-
Default Settings for the MIDI Library.
-
To change the default settings, don't edit them there, create a subclass and override the values in that subclass, then use the MIDI_CREATE_CUSTOM_INSTANCE macro to create your instance. The settings you don't override will keep their default value. Eg:
struct MySettings : public midi::DefaultSettings
{
};
-
Definition at line 50 of file midi_Settings.h .
-
-
-
-
-
-
-
-
-
- const long DefaultSettings::BaudRate = 31250
-
-
-
-
-static
-
-
-
-
-
-
-
-
-
-
-
-
- const bool DefaultSettings::HandleNullVelocityNoteOnAsNoteOff = true
-
-
-
-
-static
-
-
-
-
NoteOn with 0 velocity should be handled as NoteOf.
-Set to true to get NoteOff events when receiving null-velocity NoteOn messages.
-Set to false to get NoteOn events when receiving null-velocity NoteOn messages.
-
-
Definition at line 62 of file midi_Settings.h .
-
-
-
-
-
-
-
-
-
-
-
- const unsigned DefaultSettings::SysExMaxSize = 128
-
-
-
-
-static
-
-
-
-
Maximum size of SysEx receivable. Decrease to save RAM if you don't expect to receive SysEx, or adjust accordingly.
-
-
Definition at line 79 of file midi_Settings.h .
-
-
-
-
-
-
-
-
-
-
-
- const bool DefaultSettings::Use1ByteParsing = true
-
-
-
-
-static
-
-
-
-
Setting this to true will make MIDI.read parse only one byte of data for each call when data is available. This can speed up your application if receiving a lot of traffic, but might induce MIDI Thru and treatment latency.
-
-
Definition at line 68 of file midi_Settings.h .
-
-
-
-
-
-
-
-
-
-
-
- const bool DefaultSettings::UseRunningStatus = false
-
-
-
-
-static
-
-
-
-
Running status enables short messages when sending multiple values of the same type and channel.
-Warning: does not work with some hardware, enable with caution.
-
-
Definition at line 56 of file midi_Settings.h .
-
-
-
-
The documentation for this struct was generated from the following file:
-
-
-
-
-
-
diff --git a/a00015.js b/a00015.js
deleted file mode 100644
index ae19060..0000000
--- a/a00015.js
+++ /dev/null
@@ -1,8 +0,0 @@
-var a00015 =
-[
- [ "BaudRate", "a00015.html#a3af54ace87effb366e1ec455be22b52a", null ],
- [ "HandleNullVelocityNoteOnAsNoteOff", "a00015.html#a13c8f26edeade3374921764fa8650ac9", null ],
- [ "SysExMaxSize", "a00015.html#a73aea97c0031aa265e71a9106bd5fd3b", null ],
- [ "Use1ByteParsing", "a00015.html#a017e77f75f6fe8155e41c08f4388e531", null ],
- [ "UseRunningStatus", "a00015.html#a55abbfe8fcf5e9e927b0ca97a5b2eaa2", null ]
-];
\ No newline at end of file
diff --git a/a00016.html b/a00016.html
deleted file mode 100644
index ee7161f..0000000
--- a/a00016.html
+++ /dev/null
@@ -1,371 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: Message< SysExMaxSize > Struct Template Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include <midi_Message.h >
-
-
-
template<unsigned SysExMaxSize>
-struct Message< SysExMaxSize >
-
-
The Message structure contains decoded data of a MIDI message read from the serial port with read()
-
-
Definition at line 40 of file midi_Message.h .
-
-
-
-
-
-template<unsigned SysExMaxSize>
-
-
-
Default constructor
- Initializes the attributes with their default values.
-
-
Definition at line 45 of file midi_Message.h .
-
-
DataByte sysexArray[sSysExMaxSize]
-
-
-
-
-
-
static const unsigned sSysExMaxSize
-
-
-
-
-
-
-
-
-
-template<unsigned SysExMaxSize>
-
-
-
-
-
- unsigned Message < SysExMaxSize >::getSysExSize
- (
- )
- const
-
-
-
-
-inline
-
-
-
-
-
Definition at line 92 of file midi_Message.h .
-
94 const unsigned size = unsigned(
data2 ) << 8 |
data1 ;
-
-
static const unsigned sSysExMaxSize
-
-
-
-
-
-
-
-
-template<unsigned SysExMaxSize>
-
-
-
The MIDI channel on which the message was recieved.
- Value goes from 1 to 16.
-
-
Definition at line 62 of file midi_Message.h .
-
-
-
-
-
-
-
-template<unsigned SysExMaxSize>
-
-
-
The first data byte.
- Value goes from 0 to 127.
-
-
Definition at line 72 of file midi_Message.h .
-
-
-
-
-
-
-
-template<unsigned SysExMaxSize>
-
-
-
The second data byte. If the message is only 2 bytes long, this one is null.
- Value goes from 0 to 127.
-
-
Definition at line 78 of file midi_Message.h .
-
-
-
-
-
-
-
-template<unsigned SysExMaxSize>
-
-
-
-
-
- const unsigned Message < SysExMaxSize >::sSysExMaxSize = SysExMaxSize
-
-
-
-
-static
-
-
-
-
The maximum size for the System Exclusive array.
-
-
Definition at line 57 of file midi_Message.h .
-
-
-
-
-
-
-
-template<unsigned SysExMaxSize>
-
-
-
System Exclusive dedicated byte array.
- Array length is stocked on 16 bits, in data1 (LSB) and data2 (MSB)
-
-
Definition at line 84 of file midi_Message.h .
-
-
-
-
-
-
-
-template<unsigned SysExMaxSize>
-
-
-
The type of the message (see the MidiType enum for types reference)
-
-
Definition at line 67 of file midi_Message.h .
-
-
-
-
-
-
-
-template<unsigned SysExMaxSize>
-
-
- bool Message < SysExMaxSize >::valid
-
-
-
-
This boolean indicates if the message is valid or not. There is no channel consideration here, validity means the message respects the MIDI norm.
-
-
Definition at line 90 of file midi_Message.h .
-
-
-
-
The documentation for this struct was generated from the following file:
-
-
-
-
-
-
diff --git a/a00016.js b/a00016.js
deleted file mode 100644
index bc55272..0000000
--- a/a00016.js
+++ /dev/null
@@ -1,12 +0,0 @@
-var a00016 =
-[
- [ "Message", "a00016.html#a539ee7ccd80e06cb2fa45b1f47569837", null ],
- [ "getSysExSize", "a00016.html#a6c72b14a27625012b1215c518fd4576e", null ],
- [ "channel", "a00016.html#a3e088d88b4c2c84efd78f080a6ba3384", null ],
- [ "data1", "a00016.html#a92150532e5720f95013e16a2f49a8df8", null ],
- [ "data2", "a00016.html#af6ca8f3ba3f77fe769a259de3b88c36c", null ],
- [ "sSysExMaxSize", "a00016.html#a06ebe9aea7bf76c87564cc4b6c74f901", null ],
- [ "sysexArray", "a00016.html#a4f63b5d7cc89e5f96c8fed1367832c2b", null ],
- [ "type", "a00016.html#abfe2249141ed2a0b529f35343affb0e0", null ],
- [ "valid", "a00016.html#a715befa071b78dc19c48c4871bd5f293", null ]
-];
\ No newline at end of file
diff --git a/a00017.html b/a00017.html
index b9b199c..337f634 100644
--- a/a00017.html
+++ b/a00017.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -101,8 +101,7 @@ Classes
MIDI Library for Arduino - Ring Buffer.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
+
Project Arduino MIDI Library
Author Francois Best
Date 10/10/2016 MIT - Copyright (c) 2016 Francois Best
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
@@ -115,7 +114,7 @@ Classes
diff --git a/a00017.js b/a00017.js
deleted file mode 100644
index 8bc1d20..0000000
--- a/a00017.js
+++ /dev/null
@@ -1,74 +0,0 @@
-var a00017 =
-[
- [ "Settings", "a00017.html#a5f27d8ce1bd770fde14b80b53cdb0b55", null ],
- [ "MidiInterface", "a00017.html#aac93370735f6709267cff334878e724e", null ],
- [ "~MidiInterface", "a00017.html#ac3c95e5952cc692743767a0111821fcb", null ],
- [ "begin", "a00017.html#a0d438900bdb796d134cf9996a12493cf", null ],
- [ "beginNrpn", "a00036.html#gaf5cb8554777fbfab8fb02417572f3a39", null ],
- [ "beginRpn", "a00036.html#gad8187cac8d24d76be47f3b22d8534b39", null ],
- [ "check", "a00037.html#ga0192ac6ac2971d50a85a457f2041af13", null ],
- [ "disconnectCallbackFromType", "a00038.html#gaf25bdf5fb1cf6780b855400e4a210dcd", null ],
- [ "endNrpn", "a00036.html#ga04f625204db36a59fc06555b7fdb7733", null ],
- [ "endRpn", "a00036.html#ga16d239c638c25134a0bb22bcb28d593b", null ],
- [ "getChannel", "a00037.html#ga1e653fc11aaec776bca87dcfff13c610", null ],
- [ "getChannelFromStatusByte", "a00037.html#ga4c50a2be0160dfb169126c7d9e6d1458", null ],
- [ "getData1", "a00037.html#ga32c64fd9603f0682fa254106c994d6d8", null ],
- [ "getData2", "a00037.html#gad8baa0422e4ddc0ce08b6b73deec4572", null ],
- [ "getFilterMode", "a00039.html#ga158d90712e91e1342dd583a46677ee00", null ],
- [ "getInputChannel", "a00037.html#ga414b3426cd08e148d612f94d3e462344", null ],
- [ "getSysExArray", "a00037.html#gadfe8c45f580dff62a2f48734c7989152", null ],
- [ "getSysExArrayLength", "a00037.html#ga0732725386bdd0c7f04c6ad91a3b6f26", null ],
- [ "getThruState", "a00039.html#ga905e5df39734a7ed9ed898dc34e98d2c", null ],
- [ "getType", "a00037.html#gab326ef6f5b5510f1d25baf17bcfe7fd5", null ],
- [ "getTypeFromStatusByte", "a00037.html#ga5fe93ef5d57c050691348e44e1588e16", null ],
- [ "isChannelMessage", "a00037.html#ga833885e236de37d75838cb6447fdc694", null ],
- [ "read", "a00037.html#ga77b72b026ff0096aa7157d012405e365", null ],
- [ "read", "a00037.html#gafc4cd3ade3754607de336a9b0ef51562", null ],
- [ "send", "a00036.html#gaa411e84c8f9adc91c8b5469f987a57b8", null ],
- [ "sendAfterTouch", "a00036.html#gaf38aa26e23e34aa55a30b2ea73d935ba", null ],
- [ "sendAfterTouch", "a00036.html#gaf3f036bce005988d91812f0ef40c7151", null ],
- [ "sendControlChange", "a00036.html#gac1109ed9d013b536471fb782c06235c6", null ],
- [ "sendNoteOff", "a00036.html#gad134d670fd25296d5f2f342efa24213e", null ],
- [ "sendNoteOn", "a00036.html#ga48b88ff95fda0e2f50263283ea9239bc", null ],
- [ "sendNrpnDecrement", "a00036.html#gac964970c8b70734249d9084b23f222cf", null ],
- [ "sendNrpnIncrement", "a00036.html#ga360a0ca57828b96c0f3437108a577e87", null ],
- [ "sendNrpnValue", "a00036.html#ga75e88df77ecabe4181d6813dc8b11300", null ],
- [ "sendNrpnValue", "a00036.html#ga67706def5d790e5a049ea9cfe76f361d", null ],
- [ "sendPitchBend", "a00036.html#gae6de33a2b158541e2586cc9dc66968b7", null ],
- [ "sendPitchBend", "a00036.html#ga7071d78cc3884ce2fc8bef8341a6897b", null ],
- [ "sendPolyPressure", "a00036.html#ga45b702853d012c7270d1a4036b5a2634", null ],
- [ "sendProgramChange", "a00036.html#ga95a68e3efb4bee491ffce27d20eafa19", null ],
- [ "sendRealTime", "a00036.html#ga0592abfc408ba759444696567aa989a2", null ],
- [ "sendRpnDecrement", "a00036.html#ga3052d68beb7778ecc76f4862640f4e43", null ],
- [ "sendRpnIncrement", "a00036.html#gaf90e67a64584cccb3613404aaedbc3ba", null ],
- [ "sendRpnValue", "a00036.html#gab140bc07dc1e0e52556fcaa63de5619c", null ],
- [ "sendRpnValue", "a00036.html#gae0fe6f84e2795154ab0603906846bdac", null ],
- [ "sendSongPosition", "a00036.html#ga68050db3d434cac47b9fb60072549a2d", null ],
- [ "sendSongSelect", "a00036.html#gacdf94bf876b6b2496ce05391e9adee06", null ],
- [ "sendSysEx", "a00036.html#ga1ff65098cd4c71389f237b5b972e09ae", null ],
- [ "sendTimeCodeQuarterFrame", "a00036.html#ga30f511e30e4bfbcc7768ed0a2779565f", null ],
- [ "sendTimeCodeQuarterFrame", "a00036.html#ga1189debf343fee2f07e02ae8de3bb31f", null ],
- [ "sendTuneRequest", "a00036.html#ga80ada6f496bac2ec9cb44a8424fd8ad5", null ],
- [ "setHandleActiveSensing", "a00038.html#ga5df16432c99d62c6961265625afeed04", null ],
- [ "setHandleAfterTouchChannel", "a00038.html#ga84e97eea1bfac585ed760a484de28049", null ],
- [ "setHandleAfterTouchPoly", "a00038.html#ga3af200b2acc762f83a4971e145706e1a", null ],
- [ "setHandleClock", "a00038.html#ga80da13308ec9c54c522cb1f3b78d8332", null ],
- [ "setHandleContinue", "a00038.html#ga354ba45627fedee12a001ef1ce431383", null ],
- [ "setHandleControlChange", "a00038.html#gac04e79638e1aad48c763bb72f45b9cf3", null ],
- [ "setHandleNoteOff", "a00038.html#gadfccfb722e689e907319400e450cd50c", null ],
- [ "setHandleNoteOn", "a00038.html#gaa559b6a4b3bc390c8e410c6f17d1600f", null ],
- [ "setHandlePitchBend", "a00038.html#ga693935a39368d2fe02473932f9a14ea8", null ],
- [ "setHandleProgramChange", "a00038.html#ga42c347d540d9f109a7fcb10ba1132e3f", null ],
- [ "setHandleSongPosition", "a00038.html#ga88d7c560a6c31f5bd03a50f2cdac2e30", null ],
- [ "setHandleSongSelect", "a00038.html#ga5e68dc27713986df74493370547c9561", null ],
- [ "setHandleStart", "a00038.html#gaac912022ab5c4c6950e23fba12c3aa10", null ],
- [ "setHandleStop", "a00038.html#ga9af2e14cfd8c2f12bef0300bbc919500", null ],
- [ "setHandleSystemExclusive", "a00038.html#ga22fa7cba7503d4a007d499c9e7db9c5a", null ],
- [ "setHandleSystemReset", "a00038.html#gade7ff09d8e5dde038c2bdb376728f3ff", null ],
- [ "setHandleTimeCodeQuarterFrame", "a00038.html#ga50362b7100cf765e61a1954dac407735", null ],
- [ "setHandleTuneRequest", "a00038.html#ga63b994d3ebb8af9f90bde1d92ddac946", null ],
- [ "setInputChannel", "a00037.html#ga576df6ff055ecb72c1af9073fae9e1f0", null ],
- [ "setThruFilterMode", "a00039.html#ga1c02c609f91991afa31fd9dea881dbe3", null ],
- [ "turnThruOff", "a00039.html#ga27d7e9112f7aa73c1b9cc1401a8c36dd", null ],
- [ "turnThruOn", "a00039.html#ga1d08ace6ac86af74c3c3af90bb401cf4", null ]
-];
\ No newline at end of file
diff --git a/a00017_source.html b/a00017_source.html
index 30fce19..b173be6 100644
--- a/a00017_source.html
+++ b/a00017_source.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -84,25 +84,25 @@ $(document).ready(function(){initNavTree('a00017_source.html','');});
midi_RingBuffer.h
-
Go to the documentation of this file. 35 template <
typename DataType,
int Size>
47 void write (DataType inData);
48 void write (
const DataType* inData,
int inSize);
53 void read (DataType* outData,
int inSize);
-
-
-
-
#define BEGIN_MIDI_NAMESPACE
-
#define END_MIDI_NAMESPACE
+
Go to the documentation of this file. 34 template <
typename DataType,
int Size>
46 void write (DataType inData);
47 void write (
const DataType* inData,
int inSize);
52 void read (DataType* outData,
int inSize);
+
+
+
+
#define BEGIN_MIDI_NAMESPACE
+
#define END_MIDI_NAMESPACE
MIDI Library for the Arduino - Namespace declaration.
-
+
MIDI Library for Arduino - Ring Buffer.
-
-
void write(DataType inData)
-
+
+
void write(DataType inData)
+
diff --git a/a00018.html b/a00018.html
deleted file mode 100644
index eed8cc6..0000000
--- a/a00018.html
+++ /dev/null
@@ -1,359 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: RingBuffer< DataType, Size > Class Template Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include <midi_RingBuffer.h >
-
-
-
template<typename DataType, int Size>
-class RingBuffer< DataType, Size >
-
-
-
Definition at line 36 of file midi_RingBuffer.h .
-
-
-
-
-
-template<typename DataType , int Size>
-
-
-
-
Definition at line 34 of file midi_RingBuffer.hpp .
-
38 memset(mData, DataType(0), Size *
sizeof (DataType));
-
-
-
-
-
-
-template<typename DataType , int Size>
-
-
-
-
-
-
-
-
-template<typename DataType , int Size>
-
-
- void RingBuffer < DataType, Size >::clear
- (
- )
-
-
-
-
-
-
Definition at line 93 of file midi_RingBuffer.hpp .
-
95 memset(mData, DataType(0), Size *
sizeof (DataType));
-
-
-
-
-
-
-template<typename DataType , int Size>
-
-
- int RingBuffer < DataType, Size >::getLength
- (
- )
- const
-
-
-
-
-
Definition at line 49 of file midi_RingBuffer.hpp .
-
51 if (mReadHead == mWriteHead)
55 else if (mWriteHead > mReadHead)
57 return int(mWriteHead - mReadHead);
61 return int(mWriteHead - mData) + Size - int(mReadHead - mData);
-
-
-
-
-
-
-template<typename DataType , int Size>
-
-
- bool RingBuffer < DataType, Size >::isEmpty
- (
- )
- const
-
-
-
-
-
-
-
-
-template<typename DataType , int Size>
-
-
- DataType RingBuffer < DataType, Size >::read
- (
- )
-
-
-
-
-
-
Definition at line 103 of file midi_RingBuffer.hpp .
-
105 const DataType data = *mReadHead++;
106 if (mReadHead >= mData + Size)
-
-
-
-
-
-
-template<typename DataType, int Size>
-
-
- void RingBuffer < DataType, Size >::read
- (
- DataType *
- outData ,
-
-
-
-
- int
- inSize
-
-
-
- )
-
-
-
-
-
-
-
-
-
-template<typename DataType, int Size>
-
-
- void RingBuffer < DataType, Size >::write
- (
- DataType
- inData )
-
-
-
-
-
-
Definition at line 74 of file midi_RingBuffer.hpp .
-
76 *mWriteHead++ = inData;
77 if (mWriteHead >= mData + Size)
-
-
-
-
-
-
-template<typename DataType, int Size>
-
-
- void RingBuffer < DataType, Size >::write
- (
- const DataType *
- inData ,
-
-
-
-
- int
- inSize
-
-
-
- )
-
-
-
-
-
-
Definition at line 84 of file midi_RingBuffer.hpp .
-
86 for (
int i = 0; i < inSize; ++i)
void write(DataType inData)
-
-
-
-
The documentation for this class was generated from the following files:
-
-
-
-
-
-
diff --git a/a00018.js b/a00018.js
deleted file mode 100644
index e8bf3fe..0000000
--- a/a00018.js
+++ /dev/null
@@ -1,12 +0,0 @@
-var a00018 =
-[
- [ "RingBuffer", "a00018.html#a936bb7222ba5a8bc0eb44eeb7cf73526", null ],
- [ "~RingBuffer", "a00018.html#a17bea25e902a63200fda2fdcc9623a8f", null ],
- [ "clear", "a00018.html#a88d68cb12b382c21d35fd419d0feed1b", null ],
- [ "getLength", "a00018.html#a0b1b3ca5f78a359c282dd4c80f14e70e", null ],
- [ "isEmpty", "a00018.html#adbe20267bdb2e0119e2c70a439582e6b", null ],
- [ "read", "a00018.html#a9f6ccc4d0e05b60f223c8b7a8b88c76d", null ],
- [ "read", "a00018.html#a45a44b6d35dd92cc37ddfb2f9888e4f4", null ],
- [ "write", "a00018.html#a1de8ffd41505b8d915f4c850d7c76b6f", null ],
- [ "write", "a00018.html#aaefc2cdb26ae1ca740cdda9257a52c0d", null ]
-];
\ No newline at end of file
diff --git a/a00019.html b/a00019.html
deleted file mode 100644
index c5125ac..0000000
--- a/a00019.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: RPN Struct Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include <midi_Defs.h >
-
-
-
-
Definition at line 194 of file midi_Defs.h .
-
-
-
-
-
-Enumerator PitchBendSensitivity
-
- ChannelFineTuning
-
- ChannelCoarseTuning
-
- SelectTuningProgram
-
- SelectTuningBank
-
- ModulationDepthRange
-
- NullFunction
-
-
-
-
Definition at line 196 of file midi_Defs.h .
-
-
-
-
The documentation for this struct was generated from the following file:
-/Users/franky/dev/git/arduino_midi_library/src/midi_Defs.h
-
-
-
-
-
-
-
diff --git a/a00019.js b/a00019.js
deleted file mode 100644
index 37110cb..0000000
--- a/a00019.js
+++ /dev/null
@@ -1,12 +0,0 @@
-var a00019 =
-[
- [ "RegisteredParameterNumbers", "a00019.html#a1871767a88ee0ff4dc06943a94b49742", [
- [ "PitchBendSensitivity", "a00019.html#a1871767a88ee0ff4dc06943a94b49742a77d9fda925bfeb1e964ba1c994a415e8", null ],
- [ "ChannelFineTuning", "a00019.html#a1871767a88ee0ff4dc06943a94b49742a3810636a8ceea03e1032802a29de0549", null ],
- [ "ChannelCoarseTuning", "a00019.html#a1871767a88ee0ff4dc06943a94b49742a7468aca7d7ca5a635896322db47632c0", null ],
- [ "SelectTuningProgram", "a00019.html#a1871767a88ee0ff4dc06943a94b49742aff67508f9ba09930d7569034bd52b07d", null ],
- [ "SelectTuningBank", "a00019.html#a1871767a88ee0ff4dc06943a94b49742aa13cc875d2ad45f33f87b7f64c2af3db", null ],
- [ "ModulationDepthRange", "a00019.html#a1871767a88ee0ff4dc06943a94b49742a144f6e6d80175a53f2852cecea0fbba9", null ],
- [ "NullFunction", "a00019.html#a1871767a88ee0ff4dc06943a94b49742a5e725b88ee34f514e0a701fbe25fb0d7", null ]
- ] ]
-];
\ No newline at end of file
diff --git a/a00020.html b/a00020.html
index ebe2d20..0f18b53 100644
--- a/a00020.html
+++ b/a00020.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -91,8 +91,7 @@ $(document).ready(function(){initNavTree('a00020.html','');});
Go to the source code of this file.
MIDI Library for Arduino - Ring Buffer.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
+
Project Arduino MIDI Library
Author Francois Best
Date 10/10/2016 MIT - Copyright (c) 2016 Francois Best
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
@@ -105,7 +104,7 @@ $(document).ready(function(){initNavTree('a00020.html','');});
diff --git a/a00020.js b/a00020.js
deleted file mode 100644
index 4078f45..0000000
--- a/a00020.js
+++ /dev/null
@@ -1,9 +0,0 @@
-var a00020 =
-[
- [ "Mode", "a00020.html#ad19abe318ba3710100aefdea1895fbbb", [
- [ "Off", "a00020.html#ad19abe318ba3710100aefdea1895fbbbabd19eb89ea2bf88d8290e584e5b63fa4", null ],
- [ "Full", "a00020.html#ad19abe318ba3710100aefdea1895fbbba6825ba5f5365bc48725e4e885e8c20a3", null ],
- [ "SameChannel", "a00020.html#ad19abe318ba3710100aefdea1895fbbbae9526d0b1ea18151f23621cfe01d779a", null ],
- [ "DifferentChannel", "a00020.html#ad19abe318ba3710100aefdea1895fbbba3373022e0fab2ac4f65fdc1ce670c9bb", null ]
- ] ]
-];
\ No newline at end of file
diff --git a/a00020_source.html b/a00020_source.html
index 092c20b..a5b5a4b 100644
--- a/a00020_source.html
+++ b/a00020_source.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -84,22 +84,22 @@ $(document).ready(function(){initNavTree('a00020_source.html','');});
midi_RingBuffer.hpp
-
Go to the documentation of this file. 33 template <
typename DataType,
int Size>
38 memset(mData, DataType(0), Size *
sizeof (DataType));
41 template <
typename DataType,
int Size>
48 template <
typename DataType,
int Size>
51 if (mReadHead == mWriteHead)
55 else if (mWriteHead > mReadHead)
57 return int(mWriteHead - mReadHead);
61 return int(mWriteHead - mData) + Size - int(mReadHead - mData);
65 template <
typename DataType,
int Size>
68 return mReadHead == mWriteHead;
73 template <
typename DataType,
int Size>
76 *mWriteHead++ = inData;
77 if (mWriteHead >= mData + Size)
83 template <
typename DataType,
int Size>
86 for (
int i = 0; i < inSize; ++i)
92 template <
typename DataType,
int Size>
95 memset(mData, DataType(0), Size *
sizeof (DataType));
102 template <
typename DataType,
int Size>
105 const DataType data = *mReadHead++;
106 if (mReadHead >= mData + Size)
113 template <
typename DataType,
int Size>
116 for (
int i = 0; i < inSize; ++i)
-
-
-
#define BEGIN_MIDI_NAMESPACE
-
#define END_MIDI_NAMESPACE
-
-
-
void write(DataType inData)
-
+
Go to the documentation of this file. 32 template <
typename DataType,
int Size>
37 memset(mData, DataType(0), Size *
sizeof (DataType));
40 template <
typename DataType,
int Size>
47 template <
typename DataType,
int Size>
50 if (mReadHead == mWriteHead)
54 else if (mWriteHead > mReadHead)
56 return int(mWriteHead - mReadHead);
60 return int(mWriteHead - mData) + Size - int(mReadHead - mData);
64 template <
typename DataType,
int Size>
67 return mReadHead == mWriteHead;
72 template <
typename DataType,
int Size>
75 *mWriteHead++ = inData;
76 if (mWriteHead >= mData + Size)
82 template <
typename DataType,
int Size>
85 for (
int i = 0; i < inSize; ++i)
91 template <
typename DataType,
int Size>
94 memset(mData, DataType(0), Size *
sizeof (DataType));
101 template <
typename DataType,
int Size>
104 const DataType data = *mReadHead++;
105 if (mReadHead >= mData + Size)
112 template <
typename DataType,
int Size>
115 for (
int i = 0; i < inSize; ++i)
+
+
+
#define BEGIN_MIDI_NAMESPACE
+
#define END_MIDI_NAMESPACE
+
+
+
void write(DataType inData)
+
diff --git a/a00021.html b/a00021.html
deleted file mode 100644
index d20ce82..0000000
--- a/a00021.html
+++ /dev/null
@@ -1,402 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: UsbMidiEventPacket Struct Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include <midi_UsbDefs.h >
-
-
-
-
Definition at line 97 of file midi_UsbDefs.h .
-
-
-
-
-
-
-
-
-
- UsbMidiEventPacket::UsbMidiEventPacket
- (
- )
-
-
-
-
-
-inline
-
-
-
-
-
-
-
-
-
-
-
-
-
- byte UsbMidiEventPacket::getCableNumber
- (
- )
- const
-
-
-
-
-inline
-
-
-
-
-
-
-
-
-
-
-
-
- byte UsbMidiEventPacket::getCodeIndexNumber
- (
- )
- const
-
-
-
-
-inline
-
-
-
-
-
-
-
-
-
-
-
-
- const byte * UsbMidiEventPacket::getMidiData
- (
- )
- const
-
-
-
-
-inline
-
-
-
-
-
-
-
-
-
-
-
-
- byte * UsbMidiEventPacket::getMidiData
- (
- )
-
-
-
-
-
-inline
-
-
-
-
-
-
-
-
-
Definition at line 134 of file midi_UsbDefs.h .
-
136 mData [0] = *inData++;
void setMidiData(const byte *inData)
-
-
-
-
-
-
-
-
-
-
-
-
- void UsbMidiEventPacket::setHeader
- (
- byte
- inCableNumber ,
-
-
-
-
- byte
- inCodeIndexNumber
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Definition at line 106 of file midi_UsbDefs.h .
-
108 const byte msb = (0x0f & inCableNumber) << 4;
109 const byte lsb = (0x0f & inCodeIndexNumber);
110 mData [0] = msb | lsb;
-
-
-
-
-
-
-
-
-
-
-
-
- void UsbMidiEventPacket::setMidiData
- (
- const byte *
- inData )
-
-
-
-
-
-inline
-
-
-
-
-
-
-
-
-
-
- byte UsbMidiEventPacket::mData[4]
-
-
-
-
-
The documentation for this struct was generated from the following file:
-
-
-
-
-
-
diff --git a/a00021.js b/a00021.js
deleted file mode 100644
index 904c8da..0000000
--- a/a00021.js
+++ /dev/null
@@ -1,12 +0,0 @@
-var a00021 =
-[
- [ "UsbMidiEventPacket", "a00021.html#a34049029dcc6b9e75f3b05133a865f02", null ],
- [ "getCableNumber", "a00021.html#a0d07e17b9dc5bad2d18d9be71b30be94", null ],
- [ "getCodeIndexNumber", "a00021.html#a2b0d53caa73fea38da39f56acd48d945", null ],
- [ "getMidiData", "a00021.html#a8732f7f1ef2feb97b773f73d931798e8", null ],
- [ "getMidiData", "a00021.html#ab46d3f86752ca63a14d6717647a9a689", null ],
- [ "operator=", "a00021.html#aa9226ff0d98018b1a44cd656aef095ff", null ],
- [ "setHeader", "a00021.html#a53c4dd5ec08fa92fede55c406e09fb79", null ],
- [ "setMidiData", "a00021.html#a0066a86cf3d7f1079e3068a4ed04d009", null ],
- [ "mData", "a00021.html#a4d5ed50b7abb8af4deea4cd5c50e6d87", null ]
-];
\ No newline at end of file
diff --git a/a00022.html b/a00022.html
deleted file mode 100644
index 6b330a9..0000000
--- a/a00022.html
+++ /dev/null
@@ -1,326 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: UsbTransport< BuffersSize > Class Template Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include <midi_UsbTransport.h >
-
-
-
template<unsigned BuffersSize>
-class UsbTransport< BuffersSize >
-
-
-
Definition at line 38 of file midi_UsbTransport.h .
-
-
-
-
-
-template<unsigned BufferSize>
-
-
-
-
-
-
-
-template<unsigned BufferSize>
-
-
-
-
-
-
-
-
-template<unsigned BufferSize>
-
-
-
-
-
- unsigned UsbTransport < BufferSize >::available
- (
- )
-
-
-
-
-
-inline
-
-
-
-
-
-
-
-
-template<unsigned BufferSize>
-
-
-
-
-
- void UsbTransport < BufferSize >::begin
- (
- unsigned
- inBaudrate )
-
-
-
-
-
-inline
-
-
-
-
-
-
-
-
-template<unsigned BufferSize>
-
-
-
-
-
-
-
-template<unsigned BufferSize>
-
-
-
-
Definition at line 68 of file midi_UsbTransport.hpp .
-
70 mTxBuffer.
write (inData);
71 recomposeAndSendTxPackets();
void write(DataType inData)
-
-
-
-
The documentation for this class was generated from the following files:
-
-
-
-
-
-
diff --git a/a00022.js b/a00022.js
deleted file mode 100644
index 8f47d3d..0000000
--- a/a00022.js
+++ /dev/null
@@ -1,9 +0,0 @@
-var a00022 =
-[
- [ "UsbTransport", "a00022.html#acb8ca31730e8ea4e9058b17b2f41202b", null ],
- [ "~UsbTransport", "a00022.html#ab74990a39fc08cbe523e6b42a11bbe35", null ],
- [ "available", "a00022.html#ad850ea7fa2dfe63ea199bb841c535402", null ],
- [ "begin", "a00022.html#afc6e724fdcc96fb83af0285c5e583741", null ],
- [ "read", "a00022.html#a3e2a189763c0075a18761a438f385b05", null ],
- [ "write", "a00022.html#aedfc3deea0759ec00c4baf0dced87672", null ]
-];
\ No newline at end of file
diff --git a/a00022_source.html b/a00022_source.html
deleted file mode 100644
index 9260935..0000000
--- a/a00022_source.html
+++ /dev/null
@@ -1,124 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/doc/midi_DoxygenMainPage.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.2
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/a00023.html b/a00023.html
index df016d5..91924af 100644
--- a/a00023.html
+++ b/a00023.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -101,8 +101,7 @@ Classes
MIDI Library for the Arduino - Settings.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
+
Project Arduino MIDI Library
Author Francois Best
Date 24/02/11 MIT - Copyright (c) 2015 Francois Best
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
@@ -115,7 +114,7 @@ Classes
diff --git a/a00023.js b/a00023.js
deleted file mode 100644
index 4f2a04e..0000000
--- a/a00023.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var a00023 =
-[
- [ "decodeSysEx", "a00023.html#ae5b3935e2eeca1f7be983da095dcf056", null ],
- [ "encodeSysEx", "a00023.html#afe7c42d0b3ebed55378f19fc25c2c00b", null ]
-];
\ No newline at end of file
diff --git a/a00023_source.html b/a00023_source.html
index cc2c751..352575a 100644
--- a/a00023_source.html
+++ b/a00023_source.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -84,22 +84,22 @@ $(document).ready(function(){initNavTree('a00023_source.html','');});
midi_Settings.h
-
Go to the documentation of this file. Default Settings for the MIDI Library.
-
#define BEGIN_MIDI_NAMESPACE
-
#define END_MIDI_NAMESPACE
-
static const unsigned SysExMaxSize
-
static const long BaudRate
-
static const bool UseRunningStatus
+
Go to the documentation of this file. Default Settings for the MIDI Library.
+
#define BEGIN_MIDI_NAMESPACE
+
#define END_MIDI_NAMESPACE
+
static const unsigned SysExMaxSize
+
static const long BaudRate
+
static const bool UseRunningStatus
MIDI Library for the Arduino - Definitions.
-
static const bool HandleNullVelocityNoteOnAsNoteOff
-
static const bool Use1ByteParsing
+
static const bool HandleNullVelocityNoteOnAsNoteOff
+
static const bool Use1ByteParsing
diff --git a/a00024.html b/a00024.html
deleted file mode 100644
index 8a20906..0000000
--- a/a00024.html
+++ /dev/null
@@ -1,249 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/MIDI.cpp File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
MIDI Library for the Arduino.
-More...
-
-
Go to the source code of this file.
-
-
-BEGIN_MIDI_NAMESPACE unsigned encodeSysEx (const byte *inData, byte *outSysEx, unsigned inLength)
- Encode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes higher than 127 without breaking the MIDI protocol. Use this static method to convert the data you want to send. More...
-
-unsigned decodeSysEx (const byte *inSysEx, byte *outData, unsigned inLength)
- Decode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes higher than 127 without breaking the MIDI protocol. Use this static method to reassemble your received message. More...
-
-
-
-
MIDI Library for the Arduino.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
-
Date 24/02/11 MIT - Copyright (c) 2015 Francois Best
-
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
Definition in file MIDI.cpp .
-
-
-
-
-
-
- unsigned decodeSysEx
- (
- const byte *
- inSysEx ,
-
-
-
-
- byte *
- outData ,
-
-
-
-
- unsigned
- inLength
-
-
-
- )
-
-
-
-
-
-
Decode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes higher than 127 without breaking the MIDI protocol. Use this static method to reassemble your received message.
-
Parameters
-
- inSysEx The SysEx data received from MIDI in.
- outData The output buffer where to store the decrypted message.
- inLength The lenght of the input buffer.
-
-
-
-
Returns The lenght of the output buffer.
-
See also encodeSysEx
-
-getSysExArrayLength Code inspired from Ruin & Wesen's SysEx encoder/decoder - http://ruinwesen.com
-
-
Definition at line 83 of file MIDI.cpp .
-
89 for (
unsigned i = 0; i < inLength; ++i)
93 msbStorage = inSysEx[i];
98 const byte body = inSysEx[i];
99 const byte msb = ((msbStorage >> byteIndex--) & 1) << 7;
100 outData[count++] = msb | body;
-
-
-
-
-
-
-
-
- BEGIN_MIDI_NAMESPACE unsigned encodeSysEx
- (
- const byte *
- inData ,
-
-
-
-
- byte *
- outSysEx ,
-
-
-
-
- unsigned
- inLength
-
-
-
- )
-
-
-
-
-
-
Encode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes higher than 127 without breaking the MIDI protocol. Use this static method to convert the data you want to send.
-
Parameters
-
- inData The data to encode.
- outSysEx The output buffer where to store the encoded message.
- inLength The lenght of the input buffer.
-
-
-
-
Returns The lenght of the encoded output buffer.
-
See also decodeSysEx Code inspired from Ruin & Wesen's SysEx encoder/decoder - http://ruinwesen.com
-
-
Definition at line 46 of file MIDI.cpp .
-
48 unsigned outLength = 0;
52 for (
unsigned i = 0; i < inLength; ++i)
54 const byte data = inData[i];
55 const byte msb = data >> 7;
56 const byte body = data & 0x7f;
58 outSysEx[0] |= (msb << (6 - count));
59 outSysEx[1 + count] = body;
69 return outLength + count + (count != 0 ? 1 : 0);
-
-
-
-
-
-
-
-
-
diff --git a/a00024.js b/a00024.js
deleted file mode 100644
index da5f6a9..0000000
--- a/a00024.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var a00024 =
-[
- [ "decodeSysEx", "a00024.html#ae5b3935e2eeca1f7be983da095dcf056", null ],
- [ "encodeSysEx", "a00024.html#afe7c42d0b3ebed55378f19fc25c2c00b", null ]
-];
\ No newline at end of file
diff --git a/a00024_source.html b/a00024_source.html
deleted file mode 100644
index d7de307..0000000
--- a/a00024_source.html
+++ /dev/null
@@ -1,130 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/MIDI.cpp Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file. 48 unsigned outLength = 0;
52 for (
unsigned i = 0; i < inLength; ++i)
54 const byte data = inData[i];
55 const byte msb = data >> 7;
56 const byte body = data & 0x7f;
58 outSysEx[0] |= (msb << (6 - count));
59 outSysEx[1 + count] = body;
69 return outLength + count + (count != 0 ? 1 : 0);
89 for (
unsigned i = 0; i < inLength; ++i)
93 msbStorage = inSysEx[i];
98 const byte body = inSysEx[i];
99 const byte msb = ((msbStorage >> byteIndex--) & 1) << 7;
100 outData[count++] = msb | body;
#define END_MIDI_NAMESPACE
-
#define BEGIN_MIDI_NAMESPACE
-
-
unsigned decodeSysEx(const byte *inSysEx, byte *outData, unsigned inLength)
Decode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes ...
-
BEGIN_MIDI_NAMESPACE unsigned encodeSysEx(const byte *inData, byte *outSysEx, unsigned inLength)
Encode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes ...
-
MIDI Library for the Arduino.
-
-
-
-
-
-
diff --git a/a00025.html b/a00025.html
deleted file mode 100644
index ff87ab0..0000000
--- a/a00025.html
+++ /dev/null
@@ -1,259 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/MIDI.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
MIDI Library for the Arduino.
-More...
-
#include "midi_Defs.h "
-
#include "midi_Settings.h "
-
#include "midi_Message.h "
-
#include "MIDI.hpp "
-
-
Go to the source code of this file.
-
-
-class MidiInterface< SerialPort, _Settings >
- The main class for MIDI handling. It is templated over the type of serial port to provide abstraction from the hardware interface, meaning you can use HardwareSerial, SoftwareSerial or ak47's Uart classes. The only requirement is that the class implements the begin, read, write and available methods. More...
-
-
-
-unsigned encodeSysEx (const byte *inData, byte *outSysEx, unsigned inLenght)
- Encode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes higher than 127 without breaking the MIDI protocol. Use this static method to convert the data you want to send. More...
-
-unsigned decodeSysEx (const byte *inSysEx, byte *outData, unsigned inLenght)
- Decode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes higher than 127 without breaking the MIDI protocol. Use this static method to reassemble your received message. More...
-
-
-
-
MIDI Library for the Arduino.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
-
Date 24/02/11 MIT - Copyright (c) 2015 Francois Best
-
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
Definition in file MIDI.h .
-
-
-
-
-
-
- unsigned decodeSysEx
- (
- const byte *
- inSysEx ,
-
-
-
-
- byte *
- outData ,
-
-
-
-
- unsigned
- inLength
-
-
-
- )
-
-
-
-
-
-
Decode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes higher than 127 without breaking the MIDI protocol. Use this static method to reassemble your received message.
-
Parameters
-
- inSysEx The SysEx data received from MIDI in.
- outData The output buffer where to store the decrypted message.
- inLength The lenght of the input buffer.
-
-
-
-
Returns The lenght of the output buffer.
-
See also encodeSysEx
-
-getSysExArrayLength Code inspired from Ruin & Wesen's SysEx encoder/decoder - http://ruinwesen.com
-
-
Definition at line 83 of file MIDI.cpp .
-
89 for (
unsigned i = 0; i < inLength; ++i)
93 msbStorage = inSysEx[i];
98 const byte body = inSysEx[i];
99 const byte msb = ((msbStorage >> byteIndex--) & 1) << 7;
100 outData[count++] = msb | body;
-
-
-
-
-
-
-
-
- unsigned encodeSysEx
- (
- const byte *
- inData ,
-
-
-
-
- byte *
- outSysEx ,
-
-
-
-
- unsigned
- inLength
-
-
-
- )
-
-
-
-
-
-
Encode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes higher than 127 without breaking the MIDI protocol. Use this static method to convert the data you want to send.
-
Parameters
-
- inData The data to encode.
- outSysEx The output buffer where to store the encoded message.
- inLength The lenght of the input buffer.
-
-
-
-
Returns The lenght of the encoded output buffer.
-
See also decodeSysEx Code inspired from Ruin & Wesen's SysEx encoder/decoder - http://ruinwesen.com
-
-
Definition at line 46 of file MIDI.cpp .
-
48 unsigned outLength = 0;
52 for (
unsigned i = 0; i < inLength; ++i)
54 const byte data = inData[i];
55 const byte msb = data >> 7;
56 const byte body = data & 0x7f;
58 outSysEx[0] |= (msb << (6 - count));
59 outSysEx[1 + count] = body;
69 return outLength + count + (count != 0 ? 1 : 0);
-
-
-
-
-
-
-
-
-
diff --git a/a00025.js b/a00025.js
deleted file mode 100644
index c664d39..0000000
--- a/a00025.js
+++ /dev/null
@@ -1,6 +0,0 @@
-var a00025 =
-[
- [ "MidiInterface", "a00017.html", "a00017" ],
- [ "decodeSysEx", "a00025.html#acd6ba88e8a9b7d47226e1288539758d6", null ],
- [ "encodeSysEx", "a00025.html#a658e91a27ea7f4172798d9503508d702", null ]
-];
\ No newline at end of file
diff --git a/a00025_source.html b/a00025_source.html
deleted file mode 100644
index ab54d0d..0000000
--- a/a00025_source.html
+++ /dev/null
@@ -1,207 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/MIDI.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file. 45 template <
class SerialPort,
class _Settings = DefaultSettings>
92 bool inArrayContainsBoundaries =
false );
103 inline void beginRpn (
unsigned inNumber,
149 inline bool check ()
const ;
186 void launchCallback();
188 void (*mNoteOffCallback)(
byte channel,
byte note,
byte velocity);
189 void (*mNoteOnCallback)(
byte channel,
byte note,
byte velocity);
190 void (*mAfterTouchPolyCallback)(
byte channel,
byte note,
byte velocity);
191 void (*mControlChangeCallback)(
byte channel,
byte ,
byte );
192 void (*mProgramChangeCallback)(byte channel,
byte );
193 void (*mAfterTouchChannelCallback)(byte channel,
byte );
194 void (*mPitchBendCallback)(byte channel, int);
195 void (*mSystemExclusiveCallback)(byte * array,
unsigned size);
196 void (*mTimeCodeQuarterFrameCallback)(byte data);
197 void (*mSongPositionCallback)(
unsigned beats);
198 void (*mSongSelectCallback)(byte songnumber);
199 void (*mTuneRequestCallback)(void);
200 void (*mClockCallback)(void);
201 void (*mStartCallback)(void);
202 void (*mContinueCallback)(void);
203 void (*mStopCallback)(void);
204 void (*mActiveSensingCallback)(void);
205 void (*mSystemResetCallback)(void);
219 void thruFilter(byte inChannel);
223 inline void handleNullVelocityNoteOnAsNoteOff();
224 inline bool inputFilter(
Channel inChannel);
225 inline void resetInput();
237 byte mPendingMessage[3];
238 unsigned mPendingMessageExpectedLenght;
239 unsigned mPendingMessageIndex;
240 unsigned mCurrentRpnNumber;
241 unsigned mCurrentNrpnNumber;
242 bool mThruActivated : 1;
244 MidiMessage mMessage;
#define END_MIDI_NAMESPACE
-
void endNrpn(Channel inChannel)
Terminate an NRPN frame. This will send a Null Function to deselect the currently selected NRPN...
-
void setHandleSystemReset(void(*fptr)(void))
-
-
void sendPolyPressure(DataByte inNoteNumber, DataByte inPressure, Channel inChannel) __attribute__((deprecated))
Send a Polyphonic AfterTouch message (applies to a specified note)
-
void setHandleNoteOn(void(*fptr)(byte channel, byte note, byte velocity))
-
DataByte getData2() const
Get the second data byte of the last received message.
-
MIDI Library for the Arduino - Definitions.
-
DataByte getData1() const
Get the first data byte of the last received message.
-
#define BEGIN_MIDI_NAMESPACE
-
static MidiType getTypeFromStatusByte(byte inStatus)
Extract an enumerated MIDI type from a status byte.
-
void sendPitchBend(int inPitchValue, Channel inChannel)
Send a Pitch Bend message using a signed integer value.
-
Thru::Mode getFilterMode() const
-
void endRpn(Channel inChannel)
Terminate an RPN frame. This will send a Null Function to deselect the currently selected RPN...
-
-
Channel getInputChannel() const
-
void sendAfterTouch(DataByte inPressure, Channel inChannel)
Send a MonoPhonic AfterTouch message (applies to all notes)
-
void setHandleStop(void(*fptr)(void))
-
void sendNrpnValue(unsigned inValue, Channel inChannel)
Send a 14-bit value for the currently selected NRPN number.
-
-
void sendProgramChange(DataByte inProgramNumber, Channel inChannel)
Send a Program Change message.
-
-
void setHandleAfterTouchPoly(void(*fptr)(byte channel, byte note, byte pressure))
-
void sendSongPosition(unsigned inBeats)
Send a Song Position Pointer message.
-
~MidiInterface()
Destructor for MidiInterface.
-
void setThruFilterMode(Thru::Mode inThruFilterMode)
Set the filter for thru mirroring.
-
void setHandleClock(void(*fptr)(void))
-
void sendSysEx(unsigned inLength, const byte *inArray, bool inArrayContainsBoundaries=false)
Generate and send a System Exclusive frame.
-
void setHandleControlChange(void(*fptr)(byte channel, byte number, byte value))
-
void sendRpnDecrement(byte inAmount, Channel inChannel)
-
void sendNrpnIncrement(byte inAmount, Channel inChannel)
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
MidiType getType() const
Get the last received message's type.
-
void beginNrpn(unsigned inNumber, Channel inChannel)
Start a Non-Registered Parameter Number frame.
-
MIDI Library for the Arduino - Inline implementations.
-
void disconnectCallbackFromType(MidiType inType)
Detach an external function from the given type.
-
void sendNoteOff(DataByte inNoteNumber, DataByte inVelocity, Channel inChannel)
Send a Note Off message.
-
static bool isChannelMessage(MidiType inType)
-
bool read()
Read messages from the serial port using the main input channel.
-
Channel getChannel() const
Get the channel of the message stored in the structure.
-
void sendTuneRequest()
Send a Tune Request message.
-
bool check() const
Check if a valid message is stored in the structure.
-
-
The main class for MIDI handling. It is templated over the type of serial port to provide abstraction...
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
-
MidiInterface(SerialPort &inSerial)
Constructor for MidiInterface.
-
void setHandlePitchBend(void(*fptr)(byte channel, int bend))
-
bool getThruState() const
-
MIDI Library for the Arduino - Settings.
-
const byte * getSysExArray() const
Get the System Exclusive byte array.
-
void sendNoteOn(DataByte inNoteNumber, DataByte inVelocity, Channel inChannel)
Send a Note On message.
-
void setInputChannel(Channel inChannel)
Set the value for the input MIDI channel.
-
enum __attribute__((deprecated)) MidiFilterMode
-
void sendTimeCodeQuarterFrame(DataByte inTypeNibble, DataByte inValuesNibble)
Send a MIDI Time Code Quarter Frame.
-
void setHandleSongPosition(void(*fptr)(unsigned beats))
-
void sendRpnValue(unsigned inValue, Channel inChannel)
Send a 14-bit value for the currently selected RPN number.
-
void setHandleSystemExclusive(void(*fptr)(byte *array, unsigned size))
-
void turnThruOn(Thru::Mode inThruFilterMode=Thru::Full)
-
-
void setHandleTuneRequest(void(*fptr)(void))
-
void setHandleNoteOff(void(*fptr)(byte channel, byte note, byte velocity))
-
void setHandleTimeCodeQuarterFrame(void(*fptr)(byte data))
-
void setHandleSongSelect(void(*fptr)(byte songnumber))
-
void beginRpn(unsigned inNumber, Channel inChannel)
Start a Registered Parameter Number frame.
-
void setHandleActiveSensing(void(*fptr)(void))
-
unsigned decodeSysEx(const byte *inSysEx, byte *outData, unsigned inLenght)
Decode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes ...
-
void setHandleProgramChange(void(*fptr)(byte channel, byte number))
-
void sendSongSelect(DataByte inSongNumber)
Send a Song Select message.
-
void sendRpnIncrement(byte inAmount, Channel inChannel)
-
MIDI Library for the Arduino - Message struct definition.
-
void sendNrpnDecrement(byte inAmount, Channel inChannel)
-
-
-
void setHandleStart(void(*fptr)(void))
-
unsigned encodeSysEx(const byte *inData, byte *outSysEx, unsigned inLenght)
Encode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes ...
-
Fully enabled Thru (every incoming message is sent back).
-
void setHandleContinue(void(*fptr)(void))
-
void sendRealTime(MidiType inType)
Send a Real Time (one byte) message.
-
static Channel getChannelFromStatusByte(byte inStatus)
Returns channel in the range 1-16.
-
unsigned getSysExArrayLength() const
Get the lenght of the System Exclusive array.
-
void begin(Channel inChannel=1)
Call the begin method in the setup() function of the Arduino.
-
void setHandleAfterTouchChannel(void(*fptr)(byte channel, byte pressure))
-
-
-
-
-
-
-
diff --git a/a00026.html b/a00026.html
index 1d12dcd..a1d469a 100644
--- a/a00026.html
+++ b/a00026.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -102,8 +102,7 @@ Classes
MIDI Library for the Arduino - Definitions.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
+
Project Arduino MIDI Library
Author Francois Best
Date 24/02/11 MIT - Copyright (c) 2016 Francois Best
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
@@ -116,7 +115,7 @@ Classes
diff --git a/a00026.js b/a00026.js
deleted file mode 100644
index b8bafdd..0000000
--- a/a00026.js
+++ /dev/null
@@ -1,102 +0,0 @@
-var a00026 =
-[
- [ "RPN", "a00019.html", "a00019" ],
- [ "MIDI_CHANNEL_OFF", "a00026.html#ae5f8dc293002c1090c3551ba40f6aee8", null ],
- [ "MIDI_CHANNEL_OMNI", "a00026.html#ac60eaa68c9d91e29fca58a6128c3d1cf", null ],
- [ "MIDI_CREATE_CUSTOM_INSTANCE", "a00026.html#a935143e932842acf2cdd6b483dee22ce", null ],
- [ "MIDI_CREATE_DEFAULT_INSTANCE", "a00026.html#abdfc4e28fc00332fdb6e1a6f1d63e63a", null ],
- [ "MIDI_CREATE_INSTANCE", "a00026.html#a53c744accce34d4e928bfd0ba4fe398e", null ],
- [ "MIDI_PITCHBEND_MAX", "a00026.html#a64c068d11cf783d19db59712387716f8", null ],
- [ "MIDI_PITCHBEND_MIN", "a00026.html#aac06a2c787b4c090f9e31fe3ffa483ab", null ],
- [ "byte", "a00026.html#ab8ef12fab634c171394422d0ee8baf94", null ],
- [ "Channel", "a00026.html#af0fba1bdf23d6f77614ea9697290325d", null ],
- [ "DataByte", "a00026.html#a7c1eccfe3d7d44de8ee9138d5378cd91", null ],
- [ "FilterMode", "a00026.html#a6f8b374e6eb3328986bff00ee778f42b", null ],
- [ "StatusByte", "a00026.html#a11ff4f08b08691aaf2d8b42b8330b87f", null ],
- [ "MidiControlChangeNumber", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92", [
- [ "BankSelect", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92ad35194f91f02370bc6a3370a8038cecf", null ],
- [ "ModulationWheel", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a541ce910dd64f0f4de1bb7bbc4ee488b", null ],
- [ "BreathController", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a96b4207d98300fb7ebbef4a63f0ba25a", null ],
- [ "FootController", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a998c8740d90691c0dfd234878e7179da", null ],
- [ "PortamentoTime", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a47733a6fdbb5022fd3e1cc2252df8dfc", null ],
- [ "DataEntryMSB", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a3a5b1a3b28a2b9208894374092b5209c", null ],
- [ "ChannelVolume", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a3909dfba26e88cb4b7346b5b80a97c7d", null ],
- [ "Balance", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a5dbc35c72252e48e38e11a93fab41655", null ],
- [ "Pan", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a9f249cd04015306dacc97cb22977ffef", null ],
- [ "ExpressionController", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a509f7b72d90141c2b6b586014b4c007a", null ],
- [ "EffectControl1", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a007c68eee6efc054ddff36e2f53ab297", null ],
- [ "EffectControl2", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a6035a320ca5239b2427a3ccd1c321af7", null ],
- [ "GeneralPurposeController1", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a5c5e259560524b09d6063160e1e1a9f0", null ],
- [ "GeneralPurposeController2", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a1fdb656b591a391877bc89095254e8c9", null ],
- [ "GeneralPurposeController3", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a0e451059b88b60a7347f2c029b2a1d4a", null ],
- [ "GeneralPurposeController4", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a1c9648b95804874f357440279258d0f0", null ],
- [ "DataEntryLSB", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a3590d8f51be9c696e2f4e26d9cc0bbd2", null ],
- [ "Sustain", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92ad11e47bcc1661b5ed2b6c5b5d8710c8e", null ],
- [ "Portamento", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92afd489228acbe0d881ae2473703ad4b0c", null ],
- [ "Sostenuto", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a321016241bb0d86bafa58c347f4aff39", null ],
- [ "SoftPedal", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92acc6e7108b064e18c546811bdacfe5120", null ],
- [ "Legato", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92ac3b5e4b280ea7b852d4ee1e1a4c904f7", null ],
- [ "Hold", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a571d09809707bfae8410e696210a2e62", null ],
- [ "SoundController1", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92aee3eac0e2225b195d55f22ad091108af", null ],
- [ "SoundController2", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92acd98e6527a489d7788cb474f66c3d667", null ],
- [ "SoundController3", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92af301e310574a9a24c08ef4522811c085", null ],
- [ "SoundController4", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a4acd77ca8f324462d5c250f25761675d", null ],
- [ "SoundController5", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a20fb8df1c00cc2fb12eb21b764d60c4a", null ],
- [ "SoundController6", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a8e7773b3f966446f14272fe002877fc1", null ],
- [ "SoundController7", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92aef761d1402b9ee0bd39f15601311e2de", null ],
- [ "SoundController8", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92ab4d93b8b46ad16b81ed3fa271845d10d", null ],
- [ "SoundController9", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a620800aeb04b237efc027d62bcaf1a95", null ],
- [ "SoundController10", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a7adf1560806fd9f49eaba2268956a9cb", null ],
- [ "GeneralPurposeController5", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a94f03d2efb296a0c98ddaf6429cb129b", null ],
- [ "GeneralPurposeController6", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92aaafe7e883fdddc2af7461b18c8fb2b36", null ],
- [ "GeneralPurposeController7", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92aaa78fcab6105723e2ce9f0c281dd75c8", null ],
- [ "GeneralPurposeController8", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a9d585419de34459cd561da434d2aeb20", null ],
- [ "PortamentoControl", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a6dfa0e0a2f88a9ef21a442623f583791", null ],
- [ "Effects1", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92af2cae2e3c1c33acfd3456f734b0ab3f4", null ],
- [ "Effects2", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a9d9e92bd3b9f58ee5b6b4134e864ab39", null ],
- [ "Effects3", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92acd349b8ac59e8bfae022371eebb87dfc", null ],
- [ "Effects4", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a8c49608110c3ae962fd03baba7035cd4", null ],
- [ "Effects5", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a0dc38c33e5374079f20c15ba5fc89f1f", null ],
- [ "DataIncrement", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a1b3c72b1a8ceebe54b17b9e0f06c9d56", null ],
- [ "DataDecrement", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a9bb7dfbb53f5b4a0557ed32e990296e4", null ],
- [ "NRPNLSB", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a59a063b5dbfdd4a8d715ab0ebd2d43fb", null ],
- [ "NRPNMSB", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a6c5a6ebc94d98b94a6e4ef232904e9c9", null ],
- [ "RPNLSB", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a07f169cde38afb3868aa30714c14e1fc", null ],
- [ "RPNMSB", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a38f51a1c3452ad452cb44868bc81c193", null ],
- [ "AllSoundOff", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a980953c0f8a2bfed6ff76ee05885a908", null ],
- [ "ResetAllControllers", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a6b8d5952d0407d09b8fcba53f704ba0b", null ],
- [ "LocalControl", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a1be862ad663b07b873f29e2170b994c5", null ],
- [ "AllNotesOff", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a0ff39bd822a95c907b989d90e9c8f945", null ],
- [ "OmniModeOff", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a2ce9dd3e9df12c4f1e566a176aaf791f", null ],
- [ "OmniModeOn", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a5497ab1f712be1082c83f50a6135f486", null ],
- [ "MonoModeOn", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92a17d664129c6ad243a369f026cf1b51a1", null ],
- [ "PolyModeOn", "a00026.html#ade475dd0413662853b5a7cd8dbe8ed92aea51352ce573fca667da02a26cc7755f", null ]
- ] ],
- [ "MidiFilterMode", "a00026.html#a71217491dd9526eadf7da27452a1ae4f", [
- [ "Off", "a00026.html#a71217491dd9526eadf7da27452a1ae4fad8a892b94d3a94ea861543c085ae782b", null ],
- [ "Full", "a00026.html#a71217491dd9526eadf7da27452a1ae4fa8b7c5cd8bd8eb51ee6d3fd0eac584679", null ],
- [ "SameChannel", "a00026.html#a71217491dd9526eadf7da27452a1ae4faad2a3e2910e3ceaaa71318bc8063ca75", null ],
- [ "DifferentChannel", "a00026.html#a71217491dd9526eadf7da27452a1ae4fa406da1028bd17ebf898e4e5ac3a19a4e", null ]
- ] ],
- [ "MidiType", "a00026.html#af8bb3cf501a6b530be54ef36864af943", [
- [ "InvalidType", "a00026.html#af8bb3cf501a6b530be54ef36864af943a791c6b5c1e5f30ce6c7b0937e93adbbb", null ],
- [ "NoteOff", "a00026.html#af8bb3cf501a6b530be54ef36864af943ad37718bd43a7976d5e89e8ee7819e5fd", null ],
- [ "NoteOn", "a00026.html#af8bb3cf501a6b530be54ef36864af943affc541f2571710265776574dd39fc319", null ],
- [ "AfterTouchPoly", "a00026.html#af8bb3cf501a6b530be54ef36864af943aef074e16a30d86e0a42b873dd6843cd2", null ],
- [ "ControlChange", "a00026.html#af8bb3cf501a6b530be54ef36864af943ac150258f2e69ec1e535cee9df3f5bb1e", null ],
- [ "ProgramChange", "a00026.html#af8bb3cf501a6b530be54ef36864af943a1b28117f91e20a90f91f6a6886023186", null ],
- [ "AfterTouchChannel", "a00026.html#af8bb3cf501a6b530be54ef36864af943a040c84d19624cf23edd3f54c2d432793", null ],
- [ "PitchBend", "a00026.html#af8bb3cf501a6b530be54ef36864af943ad0eed86b1606c722a91a0cb9e71305e6", null ],
- [ "SystemExclusive", "a00026.html#af8bb3cf501a6b530be54ef36864af943a76531e9669a6601f0c84b1702314e5e3", null ],
- [ "TimeCodeQuarterFrame", "a00026.html#af8bb3cf501a6b530be54ef36864af943afaf9b74dab5ac5ae3542d66515c2afcf", null ],
- [ "SongPosition", "a00026.html#af8bb3cf501a6b530be54ef36864af943a996450aa045571374864c2dc9404e944", null ],
- [ "SongSelect", "a00026.html#af8bb3cf501a6b530be54ef36864af943ad512934b4f2e896bee884c262f64acb1", null ],
- [ "TuneRequest", "a00026.html#af8bb3cf501a6b530be54ef36864af943aafec2fa09eaa764d5d629798a8f8429c", null ],
- [ "Clock", "a00026.html#af8bb3cf501a6b530be54ef36864af943a4b52d61cc39d9427f91d3b8606319e2c", null ],
- [ "Start", "a00026.html#af8bb3cf501a6b530be54ef36864af943abd5f9c956752ce4dc707b4624b3a36f7", null ],
- [ "Continue", "a00026.html#af8bb3cf501a6b530be54ef36864af943a45a66636ecd16b869e4aadd738813583", null ],
- [ "Stop", "a00026.html#af8bb3cf501a6b530be54ef36864af943af98d707eb4ed173ccfdbaf4eaa87100d", null ],
- [ "ActiveSensing", "a00026.html#af8bb3cf501a6b530be54ef36864af943a55c1135b4b41d3cff4b7832b81352823", null ],
- [ "SystemReset", "a00026.html#af8bb3cf501a6b530be54ef36864af943a7256ac4658ec7af1eb4705b83266a603", null ]
- ] ]
-];
\ No newline at end of file
diff --git a/a00026_source.html b/a00026_source.html
index d91322b..cd32d80 100644
--- a/a00026_source.html
+++ b/a00026_source.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -84,47 +84,47 @@ $(document).ready(function(){initNavTree('a00026_source.html','');});
midi_UsbDefs.h
-
Go to the documentation of this file. 66 switch (inCodeIndexNumber)
102 memset(mData, 0, 4 *
sizeof (
byte ));
108 const byte msb = (0x0f & inCableNumber) << 4;
109 const byte lsb = (0x0f & inCodeIndexNumber);
110 mData[0] = msb | lsb;
114 mData[1] = *inData++;
115 mData[2] = *inData++;
120 return mData[0] >> 4;
124 return mData[0] & 0x0f;
136 mData[0] = *inData++;
-
-
static byte getSize(byte inCodeIndexNumber)
-
-
-
-
const byte * getMidiData() const
-
-
-
void setHeader(byte inCableNumber, byte inCodeIndexNumber)
-
-
-
#define BEGIN_MIDI_NAMESPACE
-
-
#define END_MIDI_NAMESPACE
-
-
-
UsbMidiEventPacket & operator=(const byte *inData)
-
byte getCodeIndexNumber() const
-
-
-
-
-
-
-
-
-
+
Go to the documentation of this file. 65 switch (inCodeIndexNumber)
101 memset(mData, 0, 4 *
sizeof (
byte ));
107 const byte msb = (0x0f & inCableNumber) << 4;
108 const byte lsb = (0x0f & inCodeIndexNumber);
109 mData[0] = msb | lsb;
113 mData[1] = *inData++;
114 mData[2] = *inData++;
119 return mData[0] >> 4;
123 return mData[0] & 0x0f;
135 mData[0] = *inData++;
+
+
static byte getSize(byte inCodeIndexNumber)
+
+
+
+
const byte * getMidiData() const
+
+
+
void setHeader(byte inCableNumber, byte inCodeIndexNumber)
+
+
+
#define BEGIN_MIDI_NAMESPACE
+
+
#define END_MIDI_NAMESPACE
+
+
+
UsbMidiEventPacket & operator=(const byte *inData)
+
byte getCodeIndexNumber() const
+
+
+
+
+
+
+
+
+
MIDI Library for the Arduino - Definitions.
-
-
void setMidiData(const byte *inData)
-
-
byte getCableNumber() const
-
+
+
void setMidiData(const byte *inData)
+
+
byte getCableNumber() const
+
diff --git a/a00027.html b/a00027.html
deleted file mode 100644
index ebbda55..0000000
--- a/a00027.html
+++ /dev/null
@@ -1,917 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/midi_Defs.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
MIDI Library for the Arduino - Definitions.
-More...
-
#include "midi_Namespace.h "
-
#include <inttypes.h>
-
-
Go to the source code of this file.
-
-
-#define MIDI_LIBRARY_VERSION 0x040300
-
-#define MIDI_LIBRARY_VERSION_MAJOR 4
-
-#define MIDI_LIBRARY_VERSION_MINOR 3
-
-#define MIDI_LIBRARY_VERSION_PATCH 0
-
-#define MIDI_CHANNEL_OMNI 0
-
-#define MIDI_CHANNEL_OFF 17
-
-#define MIDI_PITCHBEND_MIN -8192
-
-#define MIDI_PITCHBEND_MAX 8191
-
-#define MIDI_CREATE_INSTANCE (Type, SerialPort, Name) midi::MidiInterface<Type> Name((Type&)SerialPort);
- Create an instance of the library attached to a serial port. You can use HardwareSerial or SoftwareSerial for the serial port. Example: MIDI_CREATE_INSTANCE(HardwareSerial, Serial2, midi2) ; Then call midi2.begin(), midi2.read() etc.. More...
-
-#define MIDI_CREATE_DEFAULT_INSTANCE () MIDI_CREATE_INSTANCE (HardwareSerial, Serial, MIDI);
- Create an instance of the library with default name, serial port and settings, for compatibility with sketches written with pre-v4.2 MIDI Lib, or if you don't bother using custom names, serial port or settings. More...
-
-#define MIDI_CREATE_CUSTOM_INSTANCE (Type, SerialPort, Name, Settings) midi::MidiInterface<Type, Settings> Name((Type&)SerialPort);
- Create an instance of the library attached to a serial port with custom settings. More...
-
-
-
-enum MidiType {
- InvalidType = 0x00,
-NoteOff = 0x80,
-NoteOn = 0x90,
-AfterTouchPoly = 0xA0,
-
- ControlChange = 0xB0,
-ProgramChange = 0xC0,
-AfterTouchChannel = 0xD0,
-PitchBend = 0xE0,
-
- SystemExclusive = 0xF0,
-TimeCodeQuarterFrame = 0xF1,
-SongPosition = 0xF2,
-SongSelect = 0xF3,
-
- TuneRequest = 0xF6,
-Clock = 0xF8,
-Start = 0xFA,
-Continue = 0xFB,
-
- Stop = 0xFC,
-ActiveSensing = 0xFE,
-SystemReset = 0xFF
-
- }
-
-enum MidiControlChangeNumber {
- BankSelect = 0,
-ModulationWheel = 1,
-BreathController = 2,
-FootController = 4,
-
- PortamentoTime = 5,
-DataEntryMSB = 6,
-ChannelVolume = 7,
-Balance = 8,
-
- Pan = 10,
-ExpressionController = 11,
-EffectControl1 = 12,
-EffectControl2 = 13,
-
- GeneralPurposeController1 = 16,
-GeneralPurposeController2 = 17,
-GeneralPurposeController3 = 18,
-GeneralPurposeController4 = 19,
-
- DataEntryLSB = 38,
-Sustain = 64,
-Portamento = 65,
-Sostenuto = 66,
-
- SoftPedal = 67,
-Legato = 68,
-Hold = 69,
-SoundController1 = 70,
-
- SoundController2 = 71,
-SoundController3 = 72,
-SoundController4 = 73,
-SoundController5 = 74,
-
- SoundController6 = 75,
-SoundController7 = 76,
-SoundController8 = 77,
-SoundController9 = 78,
-
- SoundController10 = 79,
-GeneralPurposeController5 = 80,
-GeneralPurposeController6 = 81,
-GeneralPurposeController7 = 82,
-
- GeneralPurposeController8 = 83,
-PortamentoControl = 84,
-Effects1 = 91,
-Effects2 = 92,
-
- Effects3 = 93,
-Effects4 = 94,
-Effects5 = 95,
-DataIncrement = 96,
-
- DataDecrement = 97,
-NRPNLSB = 98,
-NRPNMSB = 99,
-RPNLSB = 100,
-
- RPNMSB = 101,
-AllSoundOff = 120,
-ResetAllControllers = 121,
-LocalControl = 122,
-
- AllNotesOff = 123,
-OmniModeOff = 124,
-OmniModeOn = 125,
-MonoModeOn = 126,
-
- PolyModeOn = 127
-
- } Enumeration of Control Change command numbers. See the detailed controllers numbers & description here: http://www.somascape.org/midi/tech/spec.html#ctrlnums . More...
-
-
-
-
-
MIDI Library for the Arduino - Definitions.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
-
Date 24/02/11 MIT - Copyright (c) 2015 Francois Best
-
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
Definition in file midi_Defs.h .
-
-
-
-
-
-
- #define MIDI_CHANNEL_OFF 17
-
-
-
-
-
-
-
-
-
- #define MIDI_CHANNEL_OMNI 0
-
-
-
-
-
-
-
-
-
- #define MIDI_CREATE_CUSTOM_INSTANCE
- (
-
- Type,
-
-
-
-
-
- SerialPort,
-
-
-
-
-
- Name,
-
-
-
-
-
- Settings
-
-
-
- )
- midi::MidiInterface<Type, Settings> Name((Type&)SerialPort);
-
-
-
-
-
-
-
-
-
- #define MIDI_CREATE_DEFAULT_INSTANCE
- (
- )
- MIDI_CREATE_INSTANCE (HardwareSerial, Serial, MIDI);
-
-
-
-
-
Create an instance of the library with default name, serial port and settings, for compatibility with sketches written with pre-v4.2 MIDI Lib, or if you don't bother using custom names, serial port or settings.
-
-
Definition at line 227 of file midi_Defs.h .
-
-
-
-
-
-
-
-
- #define MIDI_CREATE_INSTANCE
- (
-
- Type,
-
-
-
-
-
- SerialPort,
-
-
-
-
-
- Name
-
-
-
- )
- midi::MidiInterface<Type> Name((Type&)SerialPort);
-
-
-
-
-
-
-
-
-
- #define MIDI_LIBRARY_VERSION 0x040300
-
-
-
-
-
-
-
-
-
- #define MIDI_LIBRARY_VERSION_MAJOR 4
-
-
-
-
-
-
-
-
-
- #define MIDI_LIBRARY_VERSION_MINOR 3
-
-
-
-
-
-
-
-
-
- #define MIDI_LIBRARY_VERSION_PATCH 0
-
-
-
-
-
-
-
-
-
- #define MIDI_PITCHBEND_MAX 8191
-
-
-
-
-
-
-
-
-
- #define MIDI_PITCHBEND_MIN -8192
-
-
-
-
-
-
-
-
-
-
- typedef uint8_t byte
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Enumeration of Control Change command numbers. See the detailed controllers numbers & description here: http://www.somascape.org/midi/tech/spec.html#ctrlnums .
-
-Enumerator BankSelect
-
- ModulationWheel
-
- BreathController
-
- FootController
-
- PortamentoTime
-
- DataEntryMSB
-
- ChannelVolume
-
- Balance
-
- Pan
-
- ExpressionController
-
- EffectControl1
-
- EffectControl2
-
- GeneralPurposeController1
-
- GeneralPurposeController2
-
- GeneralPurposeController3
-
- GeneralPurposeController4
-
- DataEntryLSB
-
- Sustain
-
- Portamento
-
- Sostenuto
-
- SoftPedal
-
- Legato
-
- Hold
-
- SoundController1
-Synth: Sound Variation FX: Exciter On/Off.
-
- SoundController2
-Synth: Harmonic Content FX: Compressor On/Off.
-
- SoundController3
-Synth: Release Time FX: Distortion On/Off.
-
- SoundController4
-Synth: Attack Time FX: EQ On/Off.
-
- SoundController5
-Synth: Brightness FX: Expander On/Off.
-
- SoundController6
-Synth: Decay Time FX: Reverb On/Off.
-
- SoundController7
-Synth: Vibrato Rate FX: Delay On/Off.
-
- SoundController8
-Synth: Vibrato Depth FX: Pitch Transpose On/Off.
-
- SoundController9
-Synth: Vibrato Delay FX: Flange/Chorus On/Off.
-
- SoundController10
-Synth: Undefined FX: Special Effects On/Off.
-
- GeneralPurposeController5
-
- GeneralPurposeController6
-
- GeneralPurposeController7
-
- GeneralPurposeController8
-
- PortamentoControl
-
- Effects1
-Reverb send level.
-
- Effects2
-Tremolo depth.
-
- Effects3
-Chorus send level.
-
- Effects4
-Celeste depth.
-
- Effects5
-Phaser depth.
-
- DataIncrement
-
- DataDecrement
-
- NRPNLSB
-Non-Registered Parameter Number (LSB)
-
- NRPNMSB
-Non-Registered Parameter Number (MSB)
-
- RPNLSB
-Registered Parameter Number (LSB)
-
- RPNMSB
-Registered Parameter Number (MSB)
-
- AllSoundOff
-
- ResetAllControllers
-
- LocalControl
-
- AllNotesOff
-
- OmniModeOff
-
- OmniModeOn
-
- MonoModeOn
-
- PolyModeOn
-
-
-
-
Definition at line 120 of file midi_Defs.h .
-
-
-
Synth: Brightness FX: Expander On/Off.
-
Synth: Attack Time FX: EQ On/Off.
-
-
-
-
-
-
Synth: Undefined FX: Special Effects On/Off.
-
-
-
Synth: Sound Variation FX: Exciter On/Off.
-
-
-
Synth: Release Time FX: Distortion On/Off.
-
-
-
Synth: Vibrato Delay FX: Flange/Chorus On/Off.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Synth: Vibrato Rate FX: Delay On/Off.
-
-
-
Synth: Decay Time FX: Reverb On/Off.
-
Registered Parameter Number (MSB)
-
-
-
-
-
Registered Parameter Number (LSB)
-
Non-Registered Parameter Number (MSB)
-
-
-
-
Synth: Vibrato Depth FX: Pitch Transpose On/Off.
-
-
-
-
-
-
Synth: Harmonic Content FX: Compressor On/Off.
-
Non-Registered Parameter Number (LSB)
-
-
-
-
-
-
-
-
-
-
Enumeration of MIDI types
-
-Enumerator InvalidType
-For notifying errors.
-
- NoteOff
-Note Off.
-
- NoteOn
-Note On.
-
- AfterTouchPoly
-Polyphonic AfterTouch.
-
- ControlChange
-Control Change / Channel Mode.
-
- ProgramChange
-Program Change.
-
- AfterTouchChannel
-Channel (monophonic) AfterTouch.
-
- PitchBend
-Pitch Bend.
-
- SystemExclusive
-System Exclusive.
-
- TimeCodeQuarterFrame
-System Common - MIDI Time Code Quarter Frame.
-
- SongPosition
-System Common - Song Position Pointer.
-
- SongSelect
-System Common - Song Select.
-
- TuneRequest
-System Common - Tune Request.
-
- Clock
-System Real Time - Timing Clock.
-
- Start
-System Real Time - Start.
-
- Continue
-System Real Time - Continue.
-
- Stop
-System Real Time - Stop.
-
- ActiveSensing
-System Real Time - Active Sensing.
-
- SystemReset
-System Real Time - System Reset.
-
-
-
-
Definition at line 66 of file midi_Defs.h .
-
System Real Time - System Reset.
-
-
-
-
System Real Time - Timing Clock.
-
Control Change / Channel Mode.
-
System Common - MIDI Time Code Quarter Frame.
-
System Real Time - Active Sensing.
-
Channel (monophonic) AfterTouch.
-
-
-
System Common - Song Position Pointer.
-
-
System Real Time - Continue.
-
-
System Real Time - Start.
-
System Common - Song Select.
-
System Common - Tune Request.
-
-
-
-
-
-
-
-
-
-
- enum __attribute__
- (
- (deprecated)
- )
-
-
-
-
-
Deprecated: use Thru::Mode instead. Will be removed in v5.0.
-
-
Definition at line 106 of file midi_Defs.h .
-
Thru disabled (nothing passes through).
-
Only the messages on the Input Channel will be sent back.
-
All the messages but the ones on the Input Channel will be sent back.
-
Fully enabled Thru (every incoming message is sent back).
-
-
-
-
-
-
-
-
-
diff --git a/a00027.js b/a00027.js
deleted file mode 100644
index 6f9ed90..0000000
--- a/a00027.js
+++ /dev/null
@@ -1,102 +0,0 @@
-var a00027 =
-[
- [ "Thru", "a00020.html", "a00020" ],
- [ "RPN", "a00019.html", "a00019" ],
- [ "MIDI_CHANNEL_OFF", "a00027.html#ae5f8dc293002c1090c3551ba40f6aee8", null ],
- [ "MIDI_CHANNEL_OMNI", "a00027.html#ac60eaa68c9d91e29fca58a6128c3d1cf", null ],
- [ "MIDI_CREATE_CUSTOM_INSTANCE", "a00027.html#a935143e932842acf2cdd6b483dee22ce", null ],
- [ "MIDI_CREATE_DEFAULT_INSTANCE", "a00027.html#abdfc4e28fc00332fdb6e1a6f1d63e63a", null ],
- [ "MIDI_CREATE_INSTANCE", "a00027.html#a53c744accce34d4e928bfd0ba4fe398e", null ],
- [ "MIDI_LIBRARY_VERSION", "a00027.html#a9cad47565f4570163dc307f7b7ea3d6a", null ],
- [ "MIDI_LIBRARY_VERSION_MAJOR", "a00027.html#a2d7b06873956236bf93301ac6ec4d7a1", null ],
- [ "MIDI_LIBRARY_VERSION_MINOR", "a00027.html#a925b2a533a6c4322594992e16774992a", null ],
- [ "MIDI_LIBRARY_VERSION_PATCH", "a00027.html#a8d8cb2cf54913553a5547e211b36a487", null ],
- [ "MIDI_PITCHBEND_MAX", "a00027.html#a64c068d11cf783d19db59712387716f8", null ],
- [ "MIDI_PITCHBEND_MIN", "a00027.html#aac06a2c787b4c090f9e31fe3ffa483ab", null ],
- [ "byte", "a00027.html#ab8ef12fab634c171394422d0ee8baf94", null ],
- [ "Channel", "a00027.html#af0fba1bdf23d6f77614ea9697290325d", null ],
- [ "DataByte", "a00027.html#a7c1eccfe3d7d44de8ee9138d5378cd91", null ],
- [ "FilterMode", "a00027.html#a6f8b374e6eb3328986bff00ee778f42b", null ],
- [ "StatusByte", "a00027.html#a11ff4f08b08691aaf2d8b42b8330b87f", null ],
- [ "MidiControlChangeNumber", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92", [
- [ "BankSelect", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92ad35194f91f02370bc6a3370a8038cecf", null ],
- [ "ModulationWheel", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a541ce910dd64f0f4de1bb7bbc4ee488b", null ],
- [ "BreathController", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a96b4207d98300fb7ebbef4a63f0ba25a", null ],
- [ "FootController", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a998c8740d90691c0dfd234878e7179da", null ],
- [ "PortamentoTime", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a47733a6fdbb5022fd3e1cc2252df8dfc", null ],
- [ "DataEntryMSB", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a3a5b1a3b28a2b9208894374092b5209c", null ],
- [ "ChannelVolume", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a3909dfba26e88cb4b7346b5b80a97c7d", null ],
- [ "Balance", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a5dbc35c72252e48e38e11a93fab41655", null ],
- [ "Pan", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a9f249cd04015306dacc97cb22977ffef", null ],
- [ "ExpressionController", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a509f7b72d90141c2b6b586014b4c007a", null ],
- [ "EffectControl1", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a007c68eee6efc054ddff36e2f53ab297", null ],
- [ "EffectControl2", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a6035a320ca5239b2427a3ccd1c321af7", null ],
- [ "GeneralPurposeController1", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a5c5e259560524b09d6063160e1e1a9f0", null ],
- [ "GeneralPurposeController2", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a1fdb656b591a391877bc89095254e8c9", null ],
- [ "GeneralPurposeController3", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a0e451059b88b60a7347f2c029b2a1d4a", null ],
- [ "GeneralPurposeController4", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a1c9648b95804874f357440279258d0f0", null ],
- [ "DataEntryLSB", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a3590d8f51be9c696e2f4e26d9cc0bbd2", null ],
- [ "Sustain", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92ad11e47bcc1661b5ed2b6c5b5d8710c8e", null ],
- [ "Portamento", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92afd489228acbe0d881ae2473703ad4b0c", null ],
- [ "Sostenuto", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a321016241bb0d86bafa58c347f4aff39", null ],
- [ "SoftPedal", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92acc6e7108b064e18c546811bdacfe5120", null ],
- [ "Legato", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92ac3b5e4b280ea7b852d4ee1e1a4c904f7", null ],
- [ "Hold", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a571d09809707bfae8410e696210a2e62", null ],
- [ "SoundController1", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92aee3eac0e2225b195d55f22ad091108af", null ],
- [ "SoundController2", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92acd98e6527a489d7788cb474f66c3d667", null ],
- [ "SoundController3", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92af301e310574a9a24c08ef4522811c085", null ],
- [ "SoundController4", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a4acd77ca8f324462d5c250f25761675d", null ],
- [ "SoundController5", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a20fb8df1c00cc2fb12eb21b764d60c4a", null ],
- [ "SoundController6", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a8e7773b3f966446f14272fe002877fc1", null ],
- [ "SoundController7", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92aef761d1402b9ee0bd39f15601311e2de", null ],
- [ "SoundController8", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92ab4d93b8b46ad16b81ed3fa271845d10d", null ],
- [ "SoundController9", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a620800aeb04b237efc027d62bcaf1a95", null ],
- [ "SoundController10", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a7adf1560806fd9f49eaba2268956a9cb", null ],
- [ "GeneralPurposeController5", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a94f03d2efb296a0c98ddaf6429cb129b", null ],
- [ "GeneralPurposeController6", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92aaafe7e883fdddc2af7461b18c8fb2b36", null ],
- [ "GeneralPurposeController7", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92aaa78fcab6105723e2ce9f0c281dd75c8", null ],
- [ "GeneralPurposeController8", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a9d585419de34459cd561da434d2aeb20", null ],
- [ "PortamentoControl", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a6dfa0e0a2f88a9ef21a442623f583791", null ],
- [ "Effects1", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92af2cae2e3c1c33acfd3456f734b0ab3f4", null ],
- [ "Effects2", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a9d9e92bd3b9f58ee5b6b4134e864ab39", null ],
- [ "Effects3", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92acd349b8ac59e8bfae022371eebb87dfc", null ],
- [ "Effects4", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a8c49608110c3ae962fd03baba7035cd4", null ],
- [ "Effects5", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a0dc38c33e5374079f20c15ba5fc89f1f", null ],
- [ "DataIncrement", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a1b3c72b1a8ceebe54b17b9e0f06c9d56", null ],
- [ "DataDecrement", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a9bb7dfbb53f5b4a0557ed32e990296e4", null ],
- [ "NRPNLSB", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a59a063b5dbfdd4a8d715ab0ebd2d43fb", null ],
- [ "NRPNMSB", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a6c5a6ebc94d98b94a6e4ef232904e9c9", null ],
- [ "RPNLSB", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a07f169cde38afb3868aa30714c14e1fc", null ],
- [ "RPNMSB", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a38f51a1c3452ad452cb44868bc81c193", null ],
- [ "AllSoundOff", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a980953c0f8a2bfed6ff76ee05885a908", null ],
- [ "ResetAllControllers", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a6b8d5952d0407d09b8fcba53f704ba0b", null ],
- [ "LocalControl", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a1be862ad663b07b873f29e2170b994c5", null ],
- [ "AllNotesOff", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a0ff39bd822a95c907b989d90e9c8f945", null ],
- [ "OmniModeOff", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a2ce9dd3e9df12c4f1e566a176aaf791f", null ],
- [ "OmniModeOn", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a5497ab1f712be1082c83f50a6135f486", null ],
- [ "MonoModeOn", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92a17d664129c6ad243a369f026cf1b51a1", null ],
- [ "PolyModeOn", "a00027.html#ade475dd0413662853b5a7cd8dbe8ed92aea51352ce573fca667da02a26cc7755f", null ]
- ] ],
- [ "MidiType", "a00027.html#af8bb3cf501a6b530be54ef36864af943", [
- [ "InvalidType", "a00027.html#af8bb3cf501a6b530be54ef36864af943a791c6b5c1e5f30ce6c7b0937e93adbbb", null ],
- [ "NoteOff", "a00027.html#af8bb3cf501a6b530be54ef36864af943ad37718bd43a7976d5e89e8ee7819e5fd", null ],
- [ "NoteOn", "a00027.html#af8bb3cf501a6b530be54ef36864af943affc541f2571710265776574dd39fc319", null ],
- [ "AfterTouchPoly", "a00027.html#af8bb3cf501a6b530be54ef36864af943aef074e16a30d86e0a42b873dd6843cd2", null ],
- [ "ControlChange", "a00027.html#af8bb3cf501a6b530be54ef36864af943ac150258f2e69ec1e535cee9df3f5bb1e", null ],
- [ "ProgramChange", "a00027.html#af8bb3cf501a6b530be54ef36864af943a1b28117f91e20a90f91f6a6886023186", null ],
- [ "AfterTouchChannel", "a00027.html#af8bb3cf501a6b530be54ef36864af943a040c84d19624cf23edd3f54c2d432793", null ],
- [ "PitchBend", "a00027.html#af8bb3cf501a6b530be54ef36864af943ad0eed86b1606c722a91a0cb9e71305e6", null ],
- [ "SystemExclusive", "a00027.html#af8bb3cf501a6b530be54ef36864af943a76531e9669a6601f0c84b1702314e5e3", null ],
- [ "TimeCodeQuarterFrame", "a00027.html#af8bb3cf501a6b530be54ef36864af943afaf9b74dab5ac5ae3542d66515c2afcf", null ],
- [ "SongPosition", "a00027.html#af8bb3cf501a6b530be54ef36864af943a996450aa045571374864c2dc9404e944", null ],
- [ "SongSelect", "a00027.html#af8bb3cf501a6b530be54ef36864af943ad512934b4f2e896bee884c262f64acb1", null ],
- [ "TuneRequest", "a00027.html#af8bb3cf501a6b530be54ef36864af943aafec2fa09eaa764d5d629798a8f8429c", null ],
- [ "Clock", "a00027.html#af8bb3cf501a6b530be54ef36864af943a4b52d61cc39d9427f91d3b8606319e2c", null ],
- [ "Start", "a00027.html#af8bb3cf501a6b530be54ef36864af943abd5f9c956752ce4dc707b4624b3a36f7", null ],
- [ "Continue", "a00027.html#af8bb3cf501a6b530be54ef36864af943a45a66636ecd16b869e4aadd738813583", null ],
- [ "Stop", "a00027.html#af8bb3cf501a6b530be54ef36864af943af98d707eb4ed173ccfdbaf4eaa87100d", null ],
- [ "ActiveSensing", "a00027.html#af8bb3cf501a6b530be54ef36864af943a55c1135b4b41d3cff4b7832b81352823", null ],
- [ "SystemReset", "a00027.html#af8bb3cf501a6b530be54ef36864af943a7256ac4658ec7af1eb4705b83266a603", null ]
- ] ],
- [ "__attribute__", "a00027.html#afdf4f048fbc937ab6b850f8f6d07a7b1", null ]
-];
\ No newline at end of file
diff --git a/a00027_source.html b/a00027_source.html
deleted file mode 100644
index 8989d40..0000000
--- a/a00027_source.html
+++ /dev/null
@@ -1,219 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/midi_Defs.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file. 42 #define MIDI_LIBRARY_VERSION 0x040300 43 #define MIDI_LIBRARY_VERSION_MAJOR 4 44 #define MIDI_LIBRARY_VERSION_MINOR 3 45 #define MIDI_LIBRARY_VERSION_PATCH 0 49 #define MIDI_CHANNEL_OMNI 0 50 #define MIDI_CHANNEL_OFF 17 // and over 52 #define MIDI_PITCHBEND_MIN -8192 53 #define MIDI_PITCHBEND_MAX 8191 198 PitchBendSensitivity = 0x0000,
199 ChannelFineTuning = 0x0001,
200 ChannelCoarseTuning = 0x0002,
201 SelectTuningProgram = 0x0003,
202 SelectTuningBank = 0x0004,
203 ModulationDepthRange = 0x0005,
204 NullFunction = (0x7f << 7) + 0x7f,
215 #define MIDI_CREATE_INSTANCE(Type, SerialPort, Name) \ 216 midi::MidiInterface<Type> Name((Type&)SerialPort); 218 #if defined(ARDUINO_SAM_DUE) || defined(USBCON) 220 #define MIDI_CREATE_DEFAULT_INSTANCE() \ 221 MIDI_CREATE_INSTANCE(HardwareSerial, Serial1, MIDI); 227 #define MIDI_CREATE_DEFAULT_INSTANCE() \ 228 MIDI_CREATE_INSTANCE(HardwareSerial, Serial, MIDI); 236 #define MIDI_CREATE_CUSTOM_INSTANCE(Type, SerialPort, Name, Settings) \ 237 midi::MidiInterface<Type, Settings> Name((Type&)SerialPort); #define END_MIDI_NAMESPACE
-
-
-
-
MidiControlChangeNumber
Enumeration of Control Change command numbers. See the detailed controllers numbers & description her...
-
Synth: Brightness FX: Expander On/Off.
-
Synth: Attack Time FX: EQ On/Off.
-
System Real Time - System Reset.
-
#define BEGIN_MIDI_NAMESPACE
-
-
-
-
-
-
-
Synth: Undefined FX: Special Effects On/Off.
-
-
-
-
Synth: Sound Variation FX: Exciter On/Off.
-
-
-
Synth: Release Time FX: Distortion On/Off.
-
-
-
-
-
Synth: Vibrato Delay FX: Flange/Chorus On/Off.
-
-
-
-
-
-
System Real Time - Timing Clock.
-
-
-
-
Control Change / Channel Mode.
-
-
-
-
-
-
-
System Common - MIDI Time Code Quarter Frame.
-
System Real Time - Active Sensing.
-
-
MIDI Library for the Arduino - Namespace declaration.
-
-
Channel (monophonic) AfterTouch.
-
Thru disabled (nothing passes through).
-
Synth: Vibrato Rate FX: Delay On/Off.
-
-
-
-
-
-
Synth: Decay Time FX: Reverb On/Off.
-
Registered Parameter Number (MSB)
-
System Common - Song Position Pointer.
-
enum __attribute__((deprecated)) MidiFilterMode
-
-
-
-
Only the messages on the Input Channel will be sent back.
-
-
Registered Parameter Number (LSB)
-
-
Non-Registered Parameter Number (MSB)
-
-
-
-
-
System Real Time - Continue.
-
Synth: Vibrato Depth FX: Pitch Transpose On/Off.
-
-
-
-
-
-
System Real Time - Start.
-
All the messages but the ones on the Input Channel will be sent back.
-
System Common - Song Select.
-
RegisteredParameterNumbers
-
-
Synth: Harmonic Content FX: Compressor On/Off.
-
System Common - Tune Request.
-
-
Non-Registered Parameter Number (LSB)
-
-
Fully enabled Thru (every incoming message is sent back).
-
-
-
-
-
-
-
-
-
-
diff --git a/a00028.html b/a00028.html
deleted file mode 100644
index 08a8924..0000000
--- a/a00028.html
+++ /dev/null
@@ -1,149 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/midi_Message.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
MIDI Library for the Arduino - Message struct definition.
-More...
-
-
Go to the source code of this file.
-
-
-
MIDI Library for the Arduino - Message struct definition.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
-
Date 11/06/14 MIT - Copyright (c) 2015 Francois Best
-
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
Definition in file midi_Message.h .
-
-
-
-
-
-
diff --git a/a00028.js b/a00028.js
deleted file mode 100644
index 7ceed7a..0000000
--- a/a00028.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var a00028 =
-[
- [ "BEGIN_MIDI_NAMESPACE", "a00028.html#adf6b690441eb0a31c4abd3bc4fb99673", null ],
- [ "END_MIDI_NAMESPACE", "a00028.html#abf831eff386c2ded4d253fb11321028e", null ],
- [ "MIDI_NAMESPACE", "a00028.html#a6690f18c03533dfb99f45d37aab6e735", null ],
- [ "USING_NAMESPACE_MIDI", "a00028.html#a8064897c61213d14c9353caeee7c0225", null ]
-];
\ No newline at end of file
diff --git a/a00028_source.html b/a00028_source.html
deleted file mode 100644
index bb842e6..0000000
--- a/a00028_source.html
+++ /dev/null
@@ -1,142 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/midi_Message.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file. 39 template <
unsigned SysExMaxSize>
94 const unsigned size = unsigned(data2) << 8 |
data1 ;
95 return size > sSysExMaxSize ? sSysExMaxSize : size;
#define END_MIDI_NAMESPACE
-
MIDI Library for the Arduino - Definitions.
-
#define BEGIN_MIDI_NAMESPACE
-
-
-
DataByte sysexArray[sSysExMaxSize]
-
-
-
-
MIDI Library for the Arduino - Namespace declaration.
-
-
-
-
unsigned getSysExSize() const
-
-
static const unsigned sSysExMaxSize
-
-
-
-
-
-
-
-
diff --git a/a00029.html b/a00029.html
index 186b602..19678e0 100644
--- a/a00029.html
+++ b/a00029.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -103,8 +103,7 @@ Classes
MIDI Library for the Arduino - Transport layer for USB MIDI.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
+
Project Arduino MIDI Library
Author Francois Best
Date 10/10/2016 MIT - Copyright (c) 2016 Francois Best
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
@@ -117,7 +116,7 @@ Classes
diff --git a/a00029.js b/a00029.js
deleted file mode 100644
index 99d78ae..0000000
--- a/a00029.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var a00029 =
-[
- [ "BEGIN_MIDI_NAMESPACE", "a00029.html#adf6b690441eb0a31c4abd3bc4fb99673", null ],
- [ "END_MIDI_NAMESPACE", "a00029.html#abf831eff386c2ded4d253fb11321028e", null ],
- [ "MIDI_NAMESPACE", "a00029.html#a6690f18c03533dfb99f45d37aab6e735", null ],
- [ "USING_NAMESPACE_MIDI", "a00029.html#a8064897c61213d14c9353caeee7c0225", null ]
-];
\ No newline at end of file
diff --git a/a00029_source.html b/a00029_source.html
index a105d6b..0eb47b3 100644
--- a/a00029_source.html
+++ b/a00029_source.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -84,28 +84,28 @@ $(document).ready(function(){initNavTree('a00029_source.html','');});
midi_UsbTransport.h
-
Go to the documentation of this file. 37 template <
unsigned BuffersSize>
45 inline void begin (
unsigned inBaudrate);
51 inline bool pollUsbMidi();
52 inline void recomposeAndSendTxPackets();
53 inline void resetTx();
55 static inline int getPacketLength(
const midiEventPacket_t& inPacket);
65 midiEventPacket_t mPacket;
67 TxPacket mCurrentTxPacket;
68 int mCurrentTxPacketByteIndex;
-
-
#define BEGIN_MIDI_NAMESPACE
-
-
#define END_MIDI_NAMESPACE
-
+
Go to the documentation of this file. 36 template <
unsigned BuffersSize>
44 inline void begin (
unsigned inBaudrate);
50 inline bool pollUsbMidi();
51 inline void recomposeAndSendTxPackets();
52 inline void resetTx();
54 static inline int getPacketLength(
const midiEventPacket_t& inPacket);
64 midiEventPacket_t mPacket;
66 TxPacket mCurrentTxPacket;
67 int mCurrentTxPacketByteIndex;
+
+
#define BEGIN_MIDI_NAMESPACE
+
+
#define END_MIDI_NAMESPACE
+
MIDI Library for Arduino - Ring Buffer.
MIDI Library for the Arduino - Transport layer for USB MIDI.
-
-
-
+
+
+
MIDI Library for the Arduino - Definitions.
-
-
void begin(unsigned inBaudrate)
-
+
+
void begin(unsigned inBaudrate)
+
diff --git a/a00030.html b/a00030.html
deleted file mode 100644
index fc98906..0000000
--- a/a00030.html
+++ /dev/null
@@ -1,149 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/midi_RingBuffer.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
MIDI Library for Arduino - Ring Buffer.
-More...
-
-
Go to the source code of this file.
-
-
-
MIDI Library for Arduino - Ring Buffer.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
-
Date 10/10/2016 MIT - Copyright (c) 2016 Francois Best
-
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
Definition in file midi_RingBuffer.h .
-
-
-
-
-
-
diff --git a/a00030_source.html b/a00030_source.html
deleted file mode 100644
index fb346f2..0000000
--- a/a00030_source.html
+++ /dev/null
@@ -1,136 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/midi_RingBuffer.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file. 35 template <
typename DataType,
int Size>
47 void write (DataType inData);
48 void write (
const DataType* inData,
int inSize);
53 void read (DataType* outData,
int inSize);
#define END_MIDI_NAMESPACE
-
-
-
#define BEGIN_MIDI_NAMESPACE
-
-
-
void write(DataType inData)
-
MIDI Library for the Arduino - Namespace declaration.
-
-
-
MIDI Library for Arduino - Ring Buffer.
-
-
-
-
-
-
-
diff --git a/a00031.html b/a00031.html
deleted file mode 100644
index 326650b..0000000
--- a/a00031.html
+++ /dev/null
@@ -1,139 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/midi_RingBuffer.hpp File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
MIDI Library for Arduino - Ring Buffer.
-More...
-
-
Go to the source code of this file.
-
-
MIDI Library for Arduino - Ring Buffer.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
-
Date 10/10/2016 MIT - Copyright (c) 2016 Francois Best
-
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
Definition in file midi_RingBuffer.hpp .
-
-
-
-
-
-
diff --git a/a00031_source.html b/a00031_source.html
deleted file mode 100644
index aebe403..0000000
--- a/a00031_source.html
+++ /dev/null
@@ -1,133 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/midi_RingBuffer.hpp Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file. 33 template <
typename DataType,
int Size>
38 memset(mData, DataType(0), Size *
sizeof (DataType));
41 template <
typename DataType,
int Size>
48 template <
typename DataType,
int Size>
51 if (mReadHead == mWriteHead)
55 else if (mWriteHead > mReadHead)
57 return int(mWriteHead - mReadHead);
61 return int(mWriteHead - mData) + Size - int(mReadHead - mData);
65 template <
typename DataType,
int Size>
68 return mReadHead == mWriteHead;
73 template <
typename DataType,
int Size>
76 *mWriteHead++ = inData;
77 if (mWriteHead >= mData + Size)
83 template <
typename DataType,
int Size>
86 for (
int i = 0; i < inSize; ++i)
92 template <
typename DataType,
int Size>
95 memset(mData, DataType(0), Size *
sizeof (DataType));
102 template <
typename DataType,
int Size>
105 const DataType data = *mReadHead++;
106 if (mReadHead >= mData + Size)
113 template <
typename DataType,
int Size>
116 for (
int i = 0; i < inSize; ++i)
#define END_MIDI_NAMESPACE
-
-
-
#define BEGIN_MIDI_NAMESPACE
-
-
void write(DataType inData)
-
-
-
-
-
-
-
-
-
diff --git a/a00032.html b/a00032.html
index 78b8281..72319ea 100644
--- a/a00032.html
+++ b/a00032.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -91,8 +91,7 @@ $(document).ready(function(){initNavTree('a00032.html','');});
Go to the source code of this file.
MIDI Library for the Arduino - Transport layer for USB MIDI.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
+
Project Arduino MIDI Library
Author Francois Best
Date 10/10/2016 MIT - Copyright (c) 2016 Francois Best
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
@@ -105,7 +104,7 @@ $(document).ready(function(){initNavTree('a00032.html','');});
diff --git a/a00032_source.html b/a00032_source.html
index 5feba0e..fc71ca8 100644
--- a/a00032_source.html
+++ b/a00032_source.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -84,38 +84,38 @@ $(document).ready(function(){initNavTree('a00032_source.html','');});
midi_UsbTransport.hpp
-
Go to the documentation of this file. 33 template <
unsigned BufferSize>
39 template <
unsigned BufferSize>
47 template <
unsigned BufferSize>
54 template <
unsigned BufferSize>
58 return mRxBuffer.getLength();
61 template <
unsigned BufferSize>
64 return mRxBuffer.read();
67 template <
unsigned BufferSize>
70 mTxBuffer.write(inData);
71 recomposeAndSendTxPackets();
76 template <
unsigned BufferSize>
79 bool received =
false ;
80 midiEventPacket_t packet = MidiUSB.
read ();
81 while (packet.header != 0)
85 switch (packet.header << 4)
93 mRxBuffer.write(packet.byte1);
94 mRxBuffer.write(packet.byte2);
95 mRxBuffer.write(packet.byte3);
101 mRxBuffer.write(packet.byte1);
102 mRxBuffer.write(packet.byte2);
113 mRxBuffer.write(packet.byte1);
127 packet = MidiUSB.read();
132 template <
unsigned BufferSize>
135 while (!mTxBuffer.isEmpty())
138 if (mCurrentTxPacketByteIndex == 0)
140 mCurrentTxPacket.mPacket.header = encodePacketHeader(data);
144 mCurrentTxPacket.mDataArray[mCurrentTxPacketByteIndex] = data;
146 mCurrentTxPacketByteIndex++;
148 const int packetLength = getPacketLength(mCurrentTxPacket.mPacket);
150 if (mCurrentTxPacketByteIndex == packetLength)
152 MidiUSB.write(mCurrentTxPacket.mDataArray, packetLength);
158 template <
unsigned BufferSize>
161 mCurrentTxPacket.mPacket.header = 0;
162 mCurrentTxPacket.mPacket.byte1 = 0;
163 mCurrentTxPacket.mPacket.byte2 = 0;
164 mCurrentTxPacket.mPacket.byte3 = 0;
165 mCurrentTxPacketByteIndex = 0;
168 template <
unsigned BufferSize>
172 return inStatusByte >> 4;
175 template <
unsigned BufferSize>
-
-
System Real Time - Timing Clock.
-
-
#define BEGIN_MIDI_NAMESPACE
-
-
#define END_MIDI_NAMESPACE
-
Channel (monophonic) AfterTouch.
-
-
System Real Time - Continue.
-
System Real Time - Start.
-
-
-
Control Change / Channel Mode.
-
-
System Common - Tune Request.
-
-
-
-
System Real Time - Active Sensing.
-
-
-
System Real Time - System Reset.
-
void begin(unsigned inBaudrate)
-
+
Go to the documentation of this file. 32 template <
unsigned BufferSize>
38 template <
unsigned BufferSize>
46 template <
unsigned BufferSize>
53 template <
unsigned BufferSize>
57 return mRxBuffer.getLength();
60 template <
unsigned BufferSize>
63 return mRxBuffer.read();
66 template <
unsigned BufferSize>
69 mTxBuffer.write(inData);
70 recomposeAndSendTxPackets();
75 template <
unsigned BufferSize>
78 bool received =
false ;
79 midiEventPacket_t packet = MidiUSB.
read ();
80 while (packet.header != 0)
84 switch (packet.header << 4)
92 mRxBuffer.write(packet.byte1);
93 mRxBuffer.write(packet.byte2);
94 mRxBuffer.write(packet.byte3);
100 mRxBuffer.write(packet.byte1);
101 mRxBuffer.write(packet.byte2);
112 mRxBuffer.write(packet.byte1);
126 packet = MidiUSB.read();
131 template <
unsigned BufferSize>
134 while (!mTxBuffer.isEmpty())
137 if (mCurrentTxPacketByteIndex == 0)
139 mCurrentTxPacket.mPacket.header = encodePacketHeader(data);
143 mCurrentTxPacket.mDataArray[mCurrentTxPacketByteIndex] = data;
145 mCurrentTxPacketByteIndex++;
147 const int packetLength = getPacketLength(mCurrentTxPacket.mPacket);
149 if (mCurrentTxPacketByteIndex == packetLength)
151 MidiUSB.write(mCurrentTxPacket.mDataArray, packetLength);
157 template <
unsigned BufferSize>
160 mCurrentTxPacket.mPacket.header = 0;
161 mCurrentTxPacket.mPacket.byte1 = 0;
162 mCurrentTxPacket.mPacket.byte2 = 0;
163 mCurrentTxPacket.mPacket.byte3 = 0;
164 mCurrentTxPacketByteIndex = 0;
167 template <
unsigned BufferSize>
171 return inStatusByte >> 4;
174 template <
unsigned BufferSize>
+
+
System Real Time - Timing Clock.
+
+
#define BEGIN_MIDI_NAMESPACE
+
+
#define END_MIDI_NAMESPACE
+
Channel (monophonic) AfterTouch.
+
+
System Real Time - Continue.
+
System Real Time - Start.
+
+
+
Control Change / Channel Mode.
+
+
System Common - Tune Request.
+
+
+
+
System Real Time - Active Sensing.
+
+
+
System Real Time - System Reset.
+
void begin(unsigned inBaudrate)
+
diff --git a/a00033.html b/a00033.html
deleted file mode 100644
index ef30d37..0000000
--- a/a00033.html
+++ /dev/null
@@ -1,150 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/midi_UsbDefs.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
MIDI Library for the Arduino - Definitions.
-More...
-
-
Go to the source code of this file.
-
-
-
MIDI Library for the Arduino - Definitions.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
-
Date 24/02/11 MIT - Copyright (c) 2016 Francois Best
-
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
Definition in file midi_UsbDefs.h .
-
-
-
-
-
-
diff --git a/a00033_source.html b/a00033_source.html
deleted file mode 100644
index 51baca8..0000000
--- a/a00033_source.html
+++ /dev/null
@@ -1,158 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/midi_UsbDefs.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file. 66 switch (inCodeIndexNumber)
102 memset(mData, 0, 4 *
sizeof (
byte ));
108 const byte msb = (0x0f & inCableNumber) << 4;
109 const byte lsb = (0x0f & inCodeIndexNumber);
110 mData[0] = msb | lsb;
114 mData[1] = *inData++;
115 mData[2] = *inData++;
120 return mData[0] >> 4;
124 return mData[0] & 0x0f;
136 mData[0] = *inData++;
-
#define END_MIDI_NAMESPACE
-
-
MIDI Library for the Arduino - Definitions.
-
#define BEGIN_MIDI_NAMESPACE
-
-
-
static byte getSize(byte inCodeIndexNumber)
-
-
-
-
-
-
byte getCableNumber() const
-
-
-
-
-
const byte * getMidiData() const
-
void setMidiData(const byte *inData)
-
-
-
-
-
-
-
-
byte getCodeIndexNumber() const
-
UsbMidiEventPacket & operator=(const byte *inData)
-
-
-
-
void setHeader(byte inCableNumber, byte inCodeIndexNumber)
-
-
-
-
-
-
-
diff --git a/a00034.html b/a00034.html
deleted file mode 100644
index e15f16d..0000000
--- a/a00034.html
+++ /dev/null
@@ -1,151 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/midi_UsbTransport.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
MIDI Library for the Arduino - Transport layer for USB MIDI.
-More...
-
#include "midi_Defs.h "
-
#include "midi_RingBuffer.h "
-
#include <MIDIUSB.h>
-
#include "midi_UsbTransport.hpp "
-
-
Go to the source code of this file.
-
-
-
MIDI Library for the Arduino - Transport layer for USB MIDI.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
-
Date 10/10/2016 MIT - Copyright (c) 2016 Francois Best
-
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
Definition in file midi_UsbTransport.h .
-
-
-
-
-
-
diff --git a/a00034_source.html b/a00034_source.html
deleted file mode 100644
index 896c874..0000000
--- a/a00034_source.html
+++ /dev/null
@@ -1,139 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: /Users/franky/dev/git/arduino_midi_library/src/midi_UsbTransport.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file. 37 template <
unsigned BuffersSize>
45 inline void begin (
unsigned inBaudrate);
51 inline bool pollUsbMidi();
52 inline void recomposeAndSendTxPackets();
53 inline void resetTx();
55 static inline int getPacketLength(
const midiEventPacket_t& inPacket);
65 midiEventPacket_t mPacket;
67 TxPacket mCurrentTxPacket;
68 int mCurrentTxPacketByteIndex;
#define END_MIDI_NAMESPACE
-
-
-
void begin(unsigned inBaudrate)
-
MIDI Library for the Arduino - Definitions.
-
#define BEGIN_MIDI_NAMESPACE
-
MIDI Library for Arduino - Ring Buffer.
-
-
MIDI Library for the Arduino - Transport layer for USB MIDI.
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/a00035.html b/a00035.html
index 8372ab9..f116db4 100644
--- a/a00035.html
+++ b/a00035.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -104,8 +104,7 @@ Functions
MIDI Library for the Arduino.
-
Project Arduino MIDI Library
Version 4.3
-
Author Francois Best
+
Project Arduino MIDI Library
Author Francois Best
Date 24/02/11 MIT - Copyright (c) 2015 Francois Best
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
@@ -159,8 +158,8 @@ Functions
getSysExArrayLength Code inspired from Ruin & Wesen's SysEx encoder/decoder - http://ruinwesen.com
-
Definition at line 83 of file MIDI.cpp .
-
89 for (
unsigned i = 0; i < inLength; ++i)
93 msbStorage = inSysEx[i];
98 const byte body = inSysEx[i];
99 const byte msb = ((msbStorage >> byteIndex--) & 1) << 7;
100 outData[count++] = msb | body;
+
Definition at line 82 of file MIDI.cpp .
+
88 for (
unsigned i = 0; i < inLength; ++i)
92 msbStorage = inSysEx[i];
97 const byte body = inSysEx[i];
98 const byte msb = ((msbStorage >> byteIndex--) & 1) << 7;
99 outData[count++] = msb | body;
@@ -208,8 +207,8 @@ getSysExArrayLength Code inspired from Ruin & Wesen's SysEx encoder/decoder
Returns The lenght of the encoded output buffer.
See also decodeSysEx Code inspired from Ruin & Wesen's SysEx encoder/decoder - http://ruinwesen.com
-
Definition at line 46 of file MIDI.cpp .
-
48 unsigned outLength = 0;
52 for (
unsigned i = 0; i < inLength; ++i)
54 const byte data = inData[i];
55 const byte msb = data >> 7;
56 const byte body = data & 0x7f;
58 outSysEx[0] |= (msb << (6 - count));
59 outSysEx[1 + count] = body;
69 return outLength + count + (count != 0 ? 1 : 0);
+
Definition at line 45 of file MIDI.cpp .
+
47 unsigned outLength = 0;
51 for (
unsigned i = 0; i < inLength; ++i)
53 const byte data = inData[i];
54 const byte msb = data >> 7;
55 const byte body = data & 0x7f;
57 outSysEx[0] |= (msb << (6 - count));
58 outSysEx[1 + count] = body;
68 return outLength + count + (count != 0 ? 1 : 0);
@@ -219,7 +218,7 @@ getSysExArrayLength Code inspired from Ruin & Wesen's SysEx encoder/decoder
diff --git a/a00035_source.html b/a00035_source.html
index c77519d..1227c69 100644
--- a/a00035_source.html
+++ b/a00035_source.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -84,11 +84,11 @@ $(document).ready(function(){initNavTree('a00035_source.html','');});
MIDI.cpp
-
Go to the documentation of this file. 48 unsigned outLength = 0;
52 for (
unsigned i = 0; i < inLength; ++i)
54 const byte data = inData[i];
55 const byte msb = data >> 7;
56 const byte body = data & 0x7f;
58 outSysEx[0] |= (msb << (6 - count));
59 outSysEx[1 + count] = body;
69 return outLength + count + (count != 0 ? 1 : 0);
89 for (
unsigned i = 0; i < inLength; ++i)
93 msbStorage = inSysEx[i];
98 const byte body = inSysEx[i];
99 const byte msb = ((msbStorage >> byteIndex--) & 1) << 7;
100 outData[count++] = msb | body;
#define BEGIN_MIDI_NAMESPACE
-
#define END_MIDI_NAMESPACE
-
unsigned decodeSysEx(const byte *inSysEx, byte *outData, unsigned inLength)
Decode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes ...
-
-
BEGIN_MIDI_NAMESPACE unsigned encodeSysEx(const byte *inData, byte *outSysEx, unsigned inLength)
Encode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes ...
+
Go to the documentation of this file. 47 unsigned outLength = 0;
51 for (
unsigned i = 0; i < inLength; ++i)
53 const byte data = inData[i];
54 const byte msb = data >> 7;
55 const byte body = data & 0x7f;
57 outSysEx[0] |= (msb << (6 - count));
58 outSysEx[1 + count] = body;
68 return outLength + count + (count != 0 ? 1 : 0);
88 for (
unsigned i = 0; i < inLength; ++i)
92 msbStorage = inSysEx[i];
97 const byte body = inSysEx[i];
98 const byte msb = ((msbStorage >> byteIndex--) & 1) << 7;
99 outData[count++] = msb | body;
#define BEGIN_MIDI_NAMESPACE
+
#define END_MIDI_NAMESPACE
+
unsigned decodeSysEx(const byte *inSysEx, byte *outData, unsigned inLength)
Decode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes ...
+
+
BEGIN_MIDI_NAMESPACE unsigned encodeSysEx(const byte *inData, byte *outSysEx, unsigned inLength)
Encode System Exclusive messages. SysEx messages are encoded to guarantee transmission of data bytes ...
MIDI Library for the Arduino.
@@ -96,7 +96,7 @@ $(document).ready(function(){initNavTree('a00035_source.html','');});
diff --git a/a00036.html b/a00036.html
deleted file mode 100644
index f7248c0..0000000
--- a/a00036.html
+++ /dev/null
@@ -1,1601 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: MIDI Output
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-void MidiInterface< SerialPort, _Settings >::send (MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
- Generate and send a MIDI message from the values given. More...
-
-void MidiInterface< SerialPort, _Settings >::sendNoteOn (DataByte inNoteNumber, DataByte inVelocity, Channel inChannel)
- Send a Note On message. More...
-
-void MidiInterface< SerialPort, _Settings >::sendNoteOff (DataByte inNoteNumber, DataByte inVelocity, Channel inChannel)
- Send a Note Off message. More...
-
-void MidiInterface< SerialPort, _Settings >::sendProgramChange (DataByte inProgramNumber, Channel inChannel)
- Send a Program Change message. More...
-
-void MidiInterface< SerialPort, _Settings >::sendControlChange (DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
- Send a Control Change message. More...
-
-void MidiInterface< SerialPort, _Settings >::sendPolyPressure (DataByte inNoteNumber, DataByte inPressure, Channel inChannel) __attribute__ ((deprecated))
- Send a Polyphonic AfterTouch message (applies to a specified note) More...
-
-void MidiInterface< SerialPort, _Settings >::sendAfterTouch (DataByte inPressure, Channel inChannel)
- Send a MonoPhonic AfterTouch message (applies to all notes) More...
-
-void MidiInterface< SerialPort, _Settings >::sendAfterTouch (DataByte inNoteNumber, DataByte inPressure, Channel inChannel)
- Send a Polyphonic AfterTouch message (applies to a specified note) More...
-
-void MidiInterface< SerialPort, _Settings >::sendPitchBend (int inPitchValue, Channel inChannel)
- Send a Pitch Bend message using a signed integer value. More...
-
-void MidiInterface< SerialPort, _Settings >::sendPitchBend (double inPitchValue, Channel inChannel)
- Send a Pitch Bend message using a floating point value. More...
-
-void MidiInterface< SerialPort, _Settings >::sendSysEx (unsigned inLength, const byte *inArray, bool inArrayContainsBoundaries=false)
- Generate and send a System Exclusive frame. More...
-
-void MidiInterface< SerialPort, _Settings >::sendTuneRequest ()
- Send a Tune Request message. More...
-
-void MidiInterface< SerialPort, _Settings >::sendTimeCodeQuarterFrame (DataByte inTypeNibble, DataByte inValuesNibble)
- Send a MIDI Time Code Quarter Frame. More...
-
-void MidiInterface< SerialPort, _Settings >::sendTimeCodeQuarterFrame (DataByte inData)
- Send a MIDI Time Code Quarter Frame. More...
-
-void MidiInterface< SerialPort, _Settings >::sendSongPosition (unsigned inBeats)
- Send a Song Position Pointer message. More...
-
-void MidiInterface< SerialPort, _Settings >::sendSongSelect (DataByte inSongNumber)
- Send a Song Select message. More...
-
-void MidiInterface< SerialPort, _Settings >::sendRealTime (MidiType inType)
- Send a Real Time (one byte) message. More...
-
-void MidiInterface< SerialPort, _Settings >::beginRpn (unsigned inNumber, Channel inChannel)
- Start a Registered Parameter Number frame. More...
-
-void MidiInterface< SerialPort, _Settings >::sendRpnValue (unsigned inValue, Channel inChannel)
- Send a 14-bit value for the currently selected RPN number. More...
-
-void MidiInterface< SerialPort, _Settings >::sendRpnValue (byte inMsb, byte inLsb, Channel inChannel)
- Send separate MSB/LSB values for the currently selected RPN number. More...
-
-void MidiInterface< SerialPort, _Settings >::sendRpnIncrement (byte inAmount, Channel inChannel)
-
-void MidiInterface< SerialPort, _Settings >::sendRpnDecrement (byte inAmount, Channel inChannel)
-
-void MidiInterface< SerialPort, _Settings >::endRpn (Channel inChannel)
- Terminate an RPN frame. This will send a Null Function to deselect the currently selected RPN . More...
-
-void MidiInterface< SerialPort, _Settings >::beginNrpn (unsigned inNumber, Channel inChannel)
- Start a Non-Registered Parameter Number frame. More...
-
-void MidiInterface< SerialPort, _Settings >::sendNrpnValue (unsigned inValue, Channel inChannel)
- Send a 14-bit value for the currently selected NRPN number. More...
-
-void MidiInterface< SerialPort, _Settings >::sendNrpnValue (byte inMsb, byte inLsb, Channel inChannel)
- Send separate MSB/LSB values for the currently selected NRPN number. More...
-
-void MidiInterface< SerialPort, _Settings >::sendNrpnIncrement (byte inAmount, Channel inChannel)
-
-void MidiInterface< SerialPort, _Settings >::sendNrpnDecrement (byte inAmount, Channel inChannel)
-
-void MidiInterface< SerialPort, _Settings >::endNrpn (Channel inChannel)
- Terminate an NRPN frame. This will send a Null Function to deselect the currently selected NRPN. More...
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::beginNrpn
- (
- unsigned
- inNumber ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Start a Non-Registered Parameter Number frame.
-
Parameters
-
- inNumber The 14-bit number of the NRPN you want to select.
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
-
Definition at line 543 of file MIDI.hpp .
-
546 if (mCurrentNrpnNumber != inNumber)
548 const byte numMsb = 0x7f & (inNumber >> 7);
549 const byte numLsb = 0x7f & inNumber;
552 mCurrentNrpnNumber = inNumber;
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
Non-Registered Parameter Number (MSB)
-
Non-Registered Parameter Number (LSB)
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::beginRpn
- (
- unsigned
- inNumber ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Start a Registered Parameter Number frame.
-
Parameters
-
- inNumber The 14-bit number of the RPN you want to select.
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
-
Definition at line 463 of file MIDI.hpp .
-
466 if (mCurrentRpnNumber != inNumber)
468 const byte numMsb = 0x7f & (inNumber >> 7);
469 const byte numLsb = 0x7f & inNumber;
472 mCurrentRpnNumber = inNumber;
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
Registered Parameter Number (MSB)
-
Registered Parameter Number (LSB)
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Terminate an NRPN frame. This will send a Null Function to deselect the currently selected NRPN.
-
Parameters
-
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
-
Definition at line 609 of file MIDI.hpp .
-
613 mCurrentNrpnNumber = 0xffff;
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
Non-Registered Parameter Number (MSB)
-
Non-Registered Parameter Number (LSB)
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Terminate an RPN frame. This will send a Null Function to deselect the currently selected RPN .
-
Parameters
-
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
-
Definition at line 529 of file MIDI.hpp .
-
533 mCurrentRpnNumber = 0xffff;
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
Registered Parameter Number (MSB)
-
Registered Parameter Number (LSB)
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Generate and send a MIDI message from the values given.
-
Parameters
-
- inType The message type (see type defines for reference)
- inData1 The first data byte.
- inData2 The second data byte (if the message contains only 1 data byte, set this one to 0).
- inChannel The output channel on which the message will be sent (values from 1 to 16). Note: you cannot send to OMNI.
-
-
-
-
This is an internal method, use it only if you need to send raw data from your code, at your own risks.
-
-
Definition at line 134 of file MIDI.hpp .
-
153 const StatusByte status = getStatus(inType, inChannel);
155 if (Settings::UseRunningStatus)
157 if (mRunningStatus_TX != status)
160 mRunningStatus_TX = status;
161 mSerial.write(mRunningStatus_TX);
167 mSerial.write(status);
171 mSerial.write(inData1);
174 mSerial.write(inData2);
System Real Time - System Reset.
-
-
-
System Real Time - Timing Clock.
-
-
Channel (monophonic) AfterTouch.
-
#define MIDI_CHANNEL_OMNI
-
-
void sendRealTime(MidiType inType)
Send a Real Time (one byte) message.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Send a MonoPhonic AfterTouch message (applies to all notes)
-
Parameters
-
- inPressure The amount of AfterTouch to apply to all notes.
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
-
Definition at line 266 of file MIDI.hpp .
-
Channel (monophonic) AfterTouch.
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Send a Polyphonic AfterTouch message (applies to a specified note)
-
Parameters
-
- inNoteNumber The note to apply AfterTouch to (0 to 127).
- inPressure The amount of AfterTouch to apply (0 to 127).
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
See also Replaces sendPolyPressure (which is now deprecated).
-
-
Definition at line 279 of file MIDI.hpp .
-
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendControlChange
- (
- DataByte
- inControlNumber ,
-
-
-
-
- DataByte
- inControlValue ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Send a Control Change message.
-
Parameters
-
- inControlNumber The controller number (0 to 127).
- inControlValue The value for the specified controller (0 to 127).
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
See also MidiControlChangeNumber
-
-
Definition at line 239 of file MIDI.hpp .
-
Control Change / Channel Mode.
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Send a Note Off message.
-
Parameters
-
- inNoteNumber Pitch value in the MIDI format (0 to 127).
- inVelocity Release velocity (0 to 127).
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
Note: you can send NoteOn with zero velocity to make a NoteOff, this is based on the Running Status principle, to avoid sending status messages and thus sending only NoteOn data. sendNoteOff will always send a real NoteOff message. Take a look at the values, names and frequencies of notes here: http://www.phys.unsw.edu.au/jw/notes.html
-
-
Definition at line 214 of file MIDI.hpp .
-
218 send (
NoteOff , inNoteNumber, inVelocity, inChannel);
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Send a Note On message.
-
Parameters
-
- inNoteNumber Pitch value in the MIDI format (0 to 127).
- inVelocity Note attack velocity (0 to 127). A NoteOn with 0 velocity is considered as a NoteOff.
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
Take a look at the values, names and frequencies of notes here: http://www.phys.unsw.edu.au/jw/notes.html
-
-
Definition at line 195 of file MIDI.hpp .
-
199 send (
NoteOn , inNoteNumber, inVelocity, inChannel);
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendNrpnDecrement
- (
- byte
- inAmount ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Definition at line 598 of file MIDI.hpp .
-
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendNrpnIncrement
- (
- byte
- inAmount ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Definition at line 588 of file MIDI.hpp .
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendNrpnValue
- (
- unsigned
- inValue ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Send a 14-bit value for the currently selected NRPN number.
-
Parameters
-
- inValue The 14-bit value of the selected NRPN.
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
-
Definition at line 561 of file MIDI.hpp .
-
564 const byte valMsb = 0x7f & (inValue >> 7);
565 const byte valLsb = 0x7f & inValue;
-
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendNrpnValue
- (
- byte
- inMsb ,
-
-
-
-
- byte
- inLsb ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Send separate MSB/LSB values for the currently selected NRPN number.
-
Parameters
-
- inMsb The MSB part of the value to send. Meaning depends on NRPN number.
- inLsb The LSB part of the value to send. Meaning depends on NRPN number.
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
-
Definition at line 576 of file MIDI.hpp .
-
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendPitchBend
- (
- int
- inPitchValue ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Send a Pitch Bend message using a signed integer value.
-
Parameters
-
- inPitchValue The amount of bend to send (in a signed integer format), between MIDI_PITCHBEND_MIN and MIDI_PITCHBEND_MAX, center value is 0.
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
-
Definition at line 293 of file MIDI.hpp .
-
297 send (
PitchBend , (bend & 0x7f), (bend >> 7) & 0x7f, inChannel);
-
#define MIDI_PITCHBEND_MIN
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendPitchBend
- (
- double
- inPitchValue ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Send a Pitch Bend message using a floating point value.
-
Parameters
-
- inPitchValue The amount of bend to send (in a floating point format), between -1.0f (maximum downwards bend) and +1.0f (max upwards bend), center value is 0.0f.
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
-
Definition at line 308 of file MIDI.hpp .
-
312 const int value = int(inPitchValue *
double (scale));
void sendPitchBend(int inPitchValue, Channel inChannel)
Send a Pitch Bend message using a signed integer value.
-
#define MIDI_PITCHBEND_MIN
-
#define MIDI_PITCHBEND_MAX
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Send a Polyphonic AfterTouch message (applies to a specified note)
-
Parameters
-
- inNoteNumber The note to apply AfterTouch to (0 to 127).
- inPressure The amount of AfterTouch to apply (0 to 127).
- inChannel The channel on which the message will be sent (1 to 16). Note: this method is deprecated and will be removed in a future revision of the library,
-
-
-
-
See also sendAfterTouch to send polyphonic and monophonic AfterTouch messages.
-
-
Definition at line 254 of file MIDI.hpp .
-
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendProgramChange
- (
- DataByte
- inProgramNumber ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Send a Program Change message.
-
Parameters
-
- inProgramNumber The Program to select (0 to 127).
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
-
Definition at line 226 of file MIDI.hpp .
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Send a Real Time (one byte) message.
-
Parameters
-
- inType The available Real Time types are: Start, Stop, Continue, Clock, ActiveSensing and SystemReset.
-
-
-
-
See also MidiType
-
-
Definition at line 437 of file MIDI.hpp .
-
450 mSerial.write((
byte )inType);
System Real Time - System Reset.
-
-
System Real Time - Timing Clock.
-
System Real Time - Active Sensing.
-
-
System Real Time - Continue.
-
System Real Time - Start.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendRpnDecrement
- (
- byte
- inAmount ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Definition at line 518 of file MIDI.hpp .
-
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendRpnIncrement
- (
- byte
- inAmount ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Definition at line 508 of file MIDI.hpp .
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendRpnValue
- (
- unsigned
- inValue ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Send a 14-bit value for the currently selected RPN number.
-
Parameters
-
- inValue The 14-bit value of the selected RPN .
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
-
Definition at line 481 of file MIDI.hpp .
-
484 const byte valMsb = 0x7f & (inValue >> 7);
485 const byte valLsb = 0x7f & inValue;
-
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendRpnValue
- (
- byte
- inMsb ,
-
-
-
-
- byte
- inLsb ,
-
-
-
-
- Channel
- inChannel
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Send separate MSB/LSB values for the currently selected RPN number.
-
Parameters
-
- inMsb The MSB part of the value to send. Meaning depends on RPN number.
- inLsb The LSB part of the value to send. Meaning depends on RPN number.
- inChannel The channel on which the message will be sent (1 to 16).
-
-
-
-
-
Definition at line 496 of file MIDI.hpp .
-
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendSongPosition
- (
- unsigned
- inBeats )
-
-
-
-
-
-inline
-
-
-
-
-
Send a Song Position Pointer message.
-
Parameters
-
- inBeats The number of beats since the start of the song.
-
-
-
-
-
Definition at line 405 of file MIDI.hpp .
-
408 mSerial.write(inBeats & 0x7f);
409 mSerial.write((inBeats >> 7) & 0x7f);
411 if (Settings::UseRunningStatus)
-
-
System Common - Song Position Pointer.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Send a Song Select message.
-
-
Definition at line 419 of file MIDI.hpp .
-
422 mSerial.write(inSongNumber & 0x7f);
424 if (Settings::UseRunningStatus)
-
-
System Common - Song Select.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendSysEx
- (
- unsigned
- inLength ,
-
-
-
-
- const byte *
- inArray ,
-
-
-
-
- bool
- inArrayContainsBoundaries = false
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Generate and send a System Exclusive frame.
-
Parameters
-
- inLength The size of the array to send
- inArray The byte array containing the data to send
- inArrayContainsBoundaries When set to 'true', 0xf0 & 0xf7 bytes (start & stop SysEx) will NOT be sent (and therefore must be included in the array). default value for ArrayContainsBoundaries is set to 'false' for compatibility with previous versions of the library.
-
-
-
-
-
Definition at line 326 of file MIDI.hpp .
-
330 const bool writeBeginEndBytes = !inArrayContainsBoundaries;
332 if (writeBeginEndBytes)
337 for (
unsigned i = 0; i < inLength; ++i)
339 mSerial.write(inArray[i]);
342 if (writeBeginEndBytes)
347 if (Settings::UseRunningStatus)
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendTimeCodeQuarterFrame
- (
- DataByte
- inTypeNibble ,
-
-
-
-
- DataByte
- inValuesNibble
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Send a MIDI Time Code Quarter Frame.
-
Parameters
-
- inTypeNibble MTC type
- inValuesNibble MTC data See MIDI Specification for more information.
-
-
-
-
-
Definition at line 376 of file MIDI.hpp .
-
379 const byte data = (((inTypeNibble & 0x07) << 4) | (inValuesNibble & 0x0f));
-
void sendTimeCodeQuarterFrame(DataByte inTypeNibble, DataByte inValuesNibble)
Send a MIDI Time Code Quarter Frame.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Send a MIDI Time Code Quarter Frame.
-
See MIDI Specification for more information.
Parameters
-
- inData if you want to encode directly the nibbles in your program, you can send the byte here.
-
-
-
-
-
Definition at line 390 of file MIDI.hpp .
-
393 mSerial.write(inData);
395 if (Settings::UseRunningStatus)
-
System Common - MIDI Time Code Quarter Frame.
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::sendTuneRequest
- (
- )
-
-
-
-
-
-inline
-
-
-
-
-
Send a Tune Request message.
-
When a MIDI unit receives this message, it should tune its oscillators (if equipped with any).
-
-
Definition at line 359 of file MIDI.hpp .
-
363 if (Settings::UseRunningStatus)
-
System Common - Tune Request.
-
-
-
-
-
-
-
-
-
diff --git a/a00036.js b/a00036.js
deleted file mode 100644
index a194c7c..0000000
--- a/a00036.js
+++ /dev/null
@@ -1,32 +0,0 @@
-var a00036 =
-[
- [ "beginNrpn", "a00036.html#gaf5cb8554777fbfab8fb02417572f3a39", null ],
- [ "beginRpn", "a00036.html#gad8187cac8d24d76be47f3b22d8534b39", null ],
- [ "endNrpn", "a00036.html#ga04f625204db36a59fc06555b7fdb7733", null ],
- [ "endRpn", "a00036.html#ga16d239c638c25134a0bb22bcb28d593b", null ],
- [ "send", "a00036.html#gaa411e84c8f9adc91c8b5469f987a57b8", null ],
- [ "sendAfterTouch", "a00036.html#gaf38aa26e23e34aa55a30b2ea73d935ba", null ],
- [ "sendAfterTouch", "a00036.html#gaf3f036bce005988d91812f0ef40c7151", null ],
- [ "sendControlChange", "a00036.html#gac1109ed9d013b536471fb782c06235c6", null ],
- [ "sendNoteOff", "a00036.html#gad134d670fd25296d5f2f342efa24213e", null ],
- [ "sendNoteOn", "a00036.html#ga48b88ff95fda0e2f50263283ea9239bc", null ],
- [ "sendNrpnDecrement", "a00036.html#gac964970c8b70734249d9084b23f222cf", null ],
- [ "sendNrpnIncrement", "a00036.html#ga360a0ca57828b96c0f3437108a577e87", null ],
- [ "sendNrpnValue", "a00036.html#ga75e88df77ecabe4181d6813dc8b11300", null ],
- [ "sendNrpnValue", "a00036.html#ga67706def5d790e5a049ea9cfe76f361d", null ],
- [ "sendPitchBend", "a00036.html#gae6de33a2b158541e2586cc9dc66968b7", null ],
- [ "sendPitchBend", "a00036.html#ga7071d78cc3884ce2fc8bef8341a6897b", null ],
- [ "sendPolyPressure", "a00036.html#ga45b702853d012c7270d1a4036b5a2634", null ],
- [ "sendProgramChange", "a00036.html#ga95a68e3efb4bee491ffce27d20eafa19", null ],
- [ "sendRealTime", "a00036.html#ga0592abfc408ba759444696567aa989a2", null ],
- [ "sendRpnDecrement", "a00036.html#ga3052d68beb7778ecc76f4862640f4e43", null ],
- [ "sendRpnIncrement", "a00036.html#gaf90e67a64584cccb3613404aaedbc3ba", null ],
- [ "sendRpnValue", "a00036.html#gab140bc07dc1e0e52556fcaa63de5619c", null ],
- [ "sendRpnValue", "a00036.html#gae0fe6f84e2795154ab0603906846bdac", null ],
- [ "sendSongPosition", "a00036.html#ga68050db3d434cac47b9fb60072549a2d", null ],
- [ "sendSongSelect", "a00036.html#gacdf94bf876b6b2496ce05391e9adee06", null ],
- [ "sendSysEx", "a00036.html#ga1ff65098cd4c71389f237b5b972e09ae", null ],
- [ "sendTimeCodeQuarterFrame", "a00036.html#ga30f511e30e4bfbcc7768ed0a2779565f", null ],
- [ "sendTimeCodeQuarterFrame", "a00036.html#ga1189debf343fee2f07e02ae8de3bb31f", null ],
- [ "sendTuneRequest", "a00036.html#ga80ada6f496bac2ec9cb44a8424fd8ad5", null ]
-];
\ No newline at end of file
diff --git a/a00037.html b/a00037.html
deleted file mode 100644
index ca5e483..0000000
--- a/a00037.html
+++ /dev/null
@@ -1,611 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: MIDI Input
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-bool MidiInterface< SerialPort, _Settings >::read ()
- Read messages from the serial port using the main input channel. More...
-
-bool MidiInterface< SerialPort, _Settings >::read (Channel inChannel)
- Read messages on a specified channel. More...
-
-MidiType MidiInterface< SerialPort, _Settings >::getType () const
- Get the last received message's type. More...
-
-Channel MidiInterface< SerialPort, _Settings >::getChannel () const
- Get the channel of the message stored in the structure. More...
-
-DataByte MidiInterface< SerialPort, _Settings >::getData1 () const
- Get the first data byte of the last received message. More...
-
-DataByte MidiInterface< SerialPort, _Settings >::getData2 () const
- Get the second data byte of the last received message. More...
-
-const byte * MidiInterface< SerialPort, _Settings >::getSysExArray () const
- Get the System Exclusive byte array. More...
-
-unsigned MidiInterface< SerialPort, _Settings >::getSysExArrayLength () const
- Get the lenght of the System Exclusive array. More...
-
-bool MidiInterface< SerialPort, _Settings >::check () const
- Check if a valid message is stored in the structure. More...
-
-Channel MidiInterface< SerialPort, _Settings >::getInputChannel () const
-
-void MidiInterface< SerialPort, _Settings >::setInputChannel (Channel inChannel)
- Set the value for the input MIDI channel. More...
-
-static MidiType MidiInterface< SerialPort, _Settings >::getTypeFromStatusByte (byte inStatus)
- Extract an enumerated MIDI type from a status byte. More...
-
-static Channel MidiInterface< SerialPort, _Settings >::getChannelFromStatusByte (byte inStatus)
- Returns channel in the range 1-16. More...
-
-static bool MidiInterface< SerialPort, _Settings >::isChannelMessage (MidiType inType)
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- bool MidiInterface < SerialPort, Settings >::check
- (
- )
- const
-
-
-
-
-inline
-
-
-
-
-
Check if a valid message is stored in the structure.
-
-
Definition at line 1064 of file MIDI.hpp .
-
1066 return mMessage.
valid ;
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Get the channel of the message stored in the structure.
-
Returns Channel range is 1 to 16. For non-channel messages, this will return 0.
-
-
Definition at line 1022 of file MIDI.hpp .
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
-
-inline static
-
-
-
-
-
Returns channel in the range 1-16.
-
-
Definition at line 1118 of file MIDI.hpp .
-
1120 return (inStatus & 0x0f) + 1;
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Get the first data byte of the last received message.
-
-
Definition at line 1029 of file MIDI.hpp .
-
1031 return mMessage.
data1 ;
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Get the second data byte of the last received message.
-
-
Definition at line 1036 of file MIDI.hpp .
-
1038 return mMessage.
data2 ;
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Definition at line 1072 of file MIDI.hpp .
-
1074 return mInputChannel;
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- const byte * MidiInterface < SerialPort, Settings >::getSysExArray
- (
- )
- const
-
-
-
-
-inline
-
-
-
-
-
Get the System Exclusive byte array.
-
See also getSysExArrayLength to get the array's length in bytes.
-
-
Definition at line 1046 of file MIDI.hpp .
-
DataByte sysexArray[sSysExMaxSize]
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- unsigned MidiInterface < SerialPort, Settings >::getSysExArrayLength
- (
- )
- const
-
-
-
-
-inline
-
-
-
-
-
Get the lenght of the System Exclusive array.
-
It is coded using data1 as LSB and data2 as MSB.
Returns The array's length, in bytes.
-
-
Definition at line 1057 of file MIDI.hpp .
-
unsigned getSysExSize() const
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Get the last received message's type.
-
Returns an enumerated type.
See also MidiType
-
-
Definition at line 1011 of file MIDI.hpp .
-
1013 return mMessage.
type ;
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
-
-inline static
-
-
-
-
-
Extract an enumerated MIDI type from a status byte.
-
This is a utility static method, used internally, made public so you can handle MidiTypes more easily.
-
-
Definition at line 1095 of file MIDI.hpp .
-
1097 if ((inStatus < 0x80) ||
1098 (inStatus == 0xf4) ||
1099 (inStatus == 0xf5) ||
1100 (inStatus == 0xf9) ||
1106 if (inStatus < 0xf0)
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
-
-inline static
-
-
-
-
-
Definition at line 1124 of file MIDI.hpp .
-
-
-
-
Control Change / Channel Mode.
-
Channel (monophonic) AfterTouch.
-
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- bool MidiInterface < SerialPort, Settings >::read
- (
- )
-
-
-
-
-
-inline
-
-
-
-
-
Read messages from the serial port using the main input channel.
-
Returns True if a valid message has been stored in the structure, false if not. A valid message is a message that matches the input channel.
-
-If the Thru is enabled and the message matches the filter, it is sent back on the MIDI output.
-
See also see setInputChannel()
-
-
Definition at line 644 of file MIDI.hpp .
-
646 return read (mInputChannel);
bool read()
Read messages from the serial port using the main input channel.
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Read messages on a specified channel.
-
-
Definition at line 652 of file MIDI.hpp .
-
660 handleNullVelocityNoteOnAsNoteOff();
661 const bool channelMatch = inputFilter(inChannel);
668 thruFilter(inChannel);
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Set the value for the input MIDI channel.
-
Parameters
-
- inChannel the channel value. Valid values are 1 to 16, MIDI_CHANNEL_OMNI if you want to listen to all channels, and MIDI_CHANNEL_OFF to disable input.
-
-
-
-
-
Definition at line 1082 of file MIDI.hpp .
-
1084 mInputChannel = inChannel;
-
-
-
-
-
-
-
-
diff --git a/a00037.js b/a00037.js
deleted file mode 100644
index 8272d15..0000000
--- a/a00037.js
+++ /dev/null
@@ -1,18 +0,0 @@
-var a00037 =
-[
- [ "Callbacks", "a00038.html", "a00038" ],
- [ "check", "a00037.html#ga0192ac6ac2971d50a85a457f2041af13", null ],
- [ "getChannel", "a00037.html#ga1e653fc11aaec776bca87dcfff13c610", null ],
- [ "getChannelFromStatusByte", "a00037.html#ga4c50a2be0160dfb169126c7d9e6d1458", null ],
- [ "getData1", "a00037.html#ga32c64fd9603f0682fa254106c994d6d8", null ],
- [ "getData2", "a00037.html#gad8baa0422e4ddc0ce08b6b73deec4572", null ],
- [ "getInputChannel", "a00037.html#ga414b3426cd08e148d612f94d3e462344", null ],
- [ "getSysExArray", "a00037.html#gadfe8c45f580dff62a2f48734c7989152", null ],
- [ "getSysExArrayLength", "a00037.html#ga0732725386bdd0c7f04c6ad91a3b6f26", null ],
- [ "getType", "a00037.html#gab326ef6f5b5510f1d25baf17bcfe7fd5", null ],
- [ "getTypeFromStatusByte", "a00037.html#ga5fe93ef5d57c050691348e44e1588e16", null ],
- [ "isChannelMessage", "a00037.html#ga833885e236de37d75838cb6447fdc694", null ],
- [ "read", "a00037.html#ga77b72b026ff0096aa7157d012405e365", null ],
- [ "read", "a00037.html#gafc4cd3ade3754607de336a9b0ef51562", null ],
- [ "setInputChannel", "a00037.html#ga576df6ff055ecb72c1af9073fae9e1f0", null ]
-];
\ No newline at end of file
diff --git a/a00038.html b/a00038.html
index 3ccceca..e45e183 100644
--- a/a00038.html
+++ b/a00038.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -92,7 +92,7 @@ $(document).ready(function(){initNavTree('a00038.html','');});
diff --git a/a00038.js b/a00038.js
deleted file mode 100644
index 53771c6..0000000
--- a/a00038.js
+++ /dev/null
@@ -1,22 +0,0 @@
-var a00038 =
-[
- [ "disconnectCallbackFromType", "a00038.html#gaf25bdf5fb1cf6780b855400e4a210dcd", null ],
- [ "setHandleActiveSensing", "a00038.html#ga5df16432c99d62c6961265625afeed04", null ],
- [ "setHandleAfterTouchChannel", "a00038.html#ga84e97eea1bfac585ed760a484de28049", null ],
- [ "setHandleAfterTouchPoly", "a00038.html#ga3af200b2acc762f83a4971e145706e1a", null ],
- [ "setHandleClock", "a00038.html#ga80da13308ec9c54c522cb1f3b78d8332", null ],
- [ "setHandleContinue", "a00038.html#ga354ba45627fedee12a001ef1ce431383", null ],
- [ "setHandleControlChange", "a00038.html#gac04e79638e1aad48c763bb72f45b9cf3", null ],
- [ "setHandleNoteOff", "a00038.html#gadfccfb722e689e907319400e450cd50c", null ],
- [ "setHandleNoteOn", "a00038.html#gaa559b6a4b3bc390c8e410c6f17d1600f", null ],
- [ "setHandlePitchBend", "a00038.html#ga693935a39368d2fe02473932f9a14ea8", null ],
- [ "setHandleProgramChange", "a00038.html#ga42c347d540d9f109a7fcb10ba1132e3f", null ],
- [ "setHandleSongPosition", "a00038.html#ga88d7c560a6c31f5bd03a50f2cdac2e30", null ],
- [ "setHandleSongSelect", "a00038.html#ga5e68dc27713986df74493370547c9561", null ],
- [ "setHandleStart", "a00038.html#gaac912022ab5c4c6950e23fba12c3aa10", null ],
- [ "setHandleStop", "a00038.html#ga9af2e14cfd8c2f12bef0300bbc919500", null ],
- [ "setHandleSystemExclusive", "a00038.html#ga22fa7cba7503d4a007d499c9e7db9c5a", null ],
- [ "setHandleSystemReset", "a00038.html#gade7ff09d8e5dde038c2bdb376728f3ff", null ],
- [ "setHandleTimeCodeQuarterFrame", "a00038.html#ga50362b7100cf765e61a1954dac407735", null ],
- [ "setHandleTuneRequest", "a00038.html#ga63b994d3ebb8af9f90bde1d92ddac946", null ]
-];
\ No newline at end of file
diff --git a/a00038_source.html b/a00038_source.html
index 95494e4..dded16b 100644
--- a/a00038_source.html
+++ b/a00038_source.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -90,7 +90,7 @@ $(document).ready(function(){initNavTree('a00038_source.html','');});
diff --git a/a00039.html b/a00039.html
deleted file mode 100644
index a456780..0000000
--- a/a00039.html
+++ /dev/null
@@ -1,284 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: MIDI Thru
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Definition at line 1260 of file MIDI.hpp .
-
1262 return mThruFilterMode;
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- bool MidiInterface < SerialPort, Settings >::getThruState
- (
- )
- const
-
-
-
-
-inline
-
-
-
-
-
Definition at line 1266 of file MIDI.hpp .
-
1268 return mThruActivated;
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Set the filter for thru mirroring.
-
Parameters
-
- inThruFilterMode a filter mode
-
-
-
-
See also Thru::Mode
-
-
Definition at line 1253 of file MIDI.hpp .
-
1255 mThruFilterMode = inThruFilterMode;
1256 mThruActivated = mThruFilterMode !=
Thru::Off ;
Thru disabled (nothing passes through).
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
-
- void MidiInterface < SerialPort, Settings >::turnThruOff
- (
- )
-
-
-
-
-
-inline
-
-
-
-
-
Definition at line 1279 of file MIDI.hpp .
-
1281 mThruActivated =
false ;
Thru disabled (nothing passes through).
-
-
-
-
-
-
-
-template<class SerialPort , class Settings >
-
-
-
-
Definition at line 1272 of file MIDI.hpp .
-
1274 mThruActivated =
true ;
1275 mThruFilterMode = inThruFilterMode;
-
-
-
-
-
-
-
-
diff --git a/a00039.js b/a00039.js
deleted file mode 100644
index 0a3883d..0000000
--- a/a00039.js
+++ /dev/null
@@ -1,8 +0,0 @@
-var a00039 =
-[
- [ "getFilterMode", "a00039.html#ga158d90712e91e1342dd583a46677ee00", null ],
- [ "getThruState", "a00039.html#ga905e5df39734a7ed9ed898dc34e98d2c", null ],
- [ "setThruFilterMode", "a00039.html#ga1c02c609f91991afa31fd9dea881dbe3", null ],
- [ "turnThruOff", "a00039.html#ga27d7e9112f7aa73c1b9cc1401a8c36dd", null ],
- [ "turnThruOn", "a00039.html#ga1d08ace6ac86af74c3c3af90bb401cf4", null ]
-];
\ No newline at end of file
diff --git a/a00040.html b/a00040.html
deleted file mode 100644
index 21b50ef..0000000
--- a/a00040.html
+++ /dev/null
@@ -1,146 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: Member List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.2
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This is the complete list of members for CodeIndexNumbers , including all inherited members.
-
-
-
-
-
-
diff --git a/a00041.html b/a00041.html
index 9f50628..0213f2b 100644
--- a/a00041.html
+++ b/a00041.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -220,11 +220,11 @@ template<class SerialPort , class Settings >
-
Definition at line 543 of file MIDI.hpp .
-
546 if (mCurrentNrpnNumber != inNumber)
548 const byte numMsb = 0x7f & (inNumber >> 7);
549 const byte numLsb = 0x7f & inNumber;
552 mCurrentNrpnNumber = inNumber;
Non-Registered Parameter Number (MSB)
-
Non-Registered Parameter Number (LSB)
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
+
Definition at line 542 of file MIDI.hpp .
+
545 if (mCurrentNrpnNumber != inNumber)
547 const byte numMsb = 0x7f & (inNumber >> 7);
548 const byte numLsb = 0x7f & inNumber;
551 mCurrentNrpnNumber = inNumber;
Non-Registered Parameter Number (MSB)
+
Non-Registered Parameter Number (LSB)
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
@@ -273,11 +273,11 @@ template<class SerialPort , class Settings >
-
Definition at line 463 of file MIDI.hpp .
-
466 if (mCurrentRpnNumber != inNumber)
468 const byte numMsb = 0x7f & (inNumber >> 7);
469 const byte numLsb = 0x7f & inNumber;
472 mCurrentRpnNumber = inNumber;
Registered Parameter Number (MSB)
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
-
Registered Parameter Number (LSB)
+
Definition at line 462 of file MIDI.hpp .
+
465 if (mCurrentRpnNumber != inNumber)
467 const byte numMsb = 0x7f & (inNumber >> 7);
468 const byte numLsb = 0x7f & inNumber;
471 mCurrentRpnNumber = inNumber;
Registered Parameter Number (MSB)
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
+
Registered Parameter Number (LSB)
@@ -315,10 +315,10 @@ template<class SerialPort , class Settings >
-
Definition at line 609 of file MIDI.hpp .
-
613 mCurrentNrpnNumber = 0xffff;
Non-Registered Parameter Number (MSB)
-
Non-Registered Parameter Number (LSB)
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
Definition at line 608 of file MIDI.hpp .
+
612 mCurrentNrpnNumber = 0xffff;
Non-Registered Parameter Number (MSB)
+
Non-Registered Parameter Number (LSB)
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
@@ -356,10 +356,10 @@ template<class SerialPort , class Settings >
-
Definition at line 529 of file MIDI.hpp .
-
533 mCurrentRpnNumber = 0xffff;
Registered Parameter Number (MSB)
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
Registered Parameter Number (LSB)
+
Definition at line 528 of file MIDI.hpp .
+
532 mCurrentRpnNumber = 0xffff;
Registered Parameter Number (MSB)
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
Registered Parameter Number (LSB)
@@ -415,16 +415,16 @@ template<class SerialPort , class Settings >
This is an internal method, use it only if you need to send raw data from your code, at your own risks.
-Definition at line 134 of file MIDI.hpp .
- 153 const StatusByte status = getStatus(inType, inChannel);
155 if (Settings::UseRunningStatus)
157 if (mRunningStatus_TX != status)
160 mRunningStatus_TX = status;
161 mSerial.write(mRunningStatus_TX);
167 mSerial.write(status);
171 mSerial.write(inData1);
174 mSerial.write(inData2);
System Real Time - Timing Clock.
-
-
Channel (monophonic) AfterTouch.
-
-
void sendRealTime(MidiType inType)
Send a Real Time (one byte) message.
-
#define MIDI_CHANNEL_OMNI
-
-
System Real Time - System Reset.
-
+
Definition at line 133 of file MIDI.hpp .
+
152 const StatusByte status = getStatus(inType, inChannel);
154 if (Settings::UseRunningStatus)
156 if (mRunningStatus_TX != status)
159 mRunningStatus_TX = status;
160 mSerial.write(mRunningStatus_TX);
166 mSerial.write(status);
170 mSerial.write(inData1);
173 mSerial.write(inData2);
System Real Time - Timing Clock.
+
+
Channel (monophonic) AfterTouch.
+
+
void sendRealTime(MidiType inType)
Send a Real Time (one byte) message.
+
#define MIDI_CHANNEL_OMNI
+
+
System Real Time - System Reset.
+
@@ -473,9 +473,9 @@ template<class SerialPort , class Settings >
-Definition at line 266 of file MIDI.hpp .
-Channel (monophonic) AfterTouch.
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
+
Definition at line 265 of file MIDI.hpp .
+
Channel (monophonic) AfterTouch.
+
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
@@ -532,9 +532,9 @@ template<class SerialPort , class Settings >
See also Replaces sendPolyPressure (which is now deprecated).
-Definition at line 279 of file MIDI.hpp .
-
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
+
Definition at line 278 of file MIDI.hpp .
+
+
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
@@ -591,9 +591,9 @@ template<class SerialPort , class Settings >
See also MidiControlChangeNumber
-Definition at line 239 of file MIDI.hpp .
-Control Change / Channel Mode.
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
+
Definition at line 238 of file MIDI.hpp .
+
Control Change / Channel Mode.
+
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
@@ -650,9 +650,9 @@ template<class SerialPort , class Settings >
Note: you can send NoteOn with zero velocity to make a NoteOff, this is based on the Running Status principle, to avoid sending status messages and thus sending only NoteOn data. sendNoteOff will always send a real NoteOff message. Take a look at the values, names and frequencies of notes here: http://www.phys.unsw.edu.au/jw/notes.html
-Definition at line 214 of file MIDI.hpp .
- 218 send (
NoteOff , inNoteNumber, inVelocity, inChannel);
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
-
+
Definition at line 213 of file MIDI.hpp .
+
217 send (
NoteOff , inNoteNumber, inVelocity, inChannel);
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
+
@@ -709,9 +709,9 @@ template<class SerialPort , class Settings >
Take a look at the values, names and frequencies of notes here: http://www.phys.unsw.edu.au/jw/notes.html
-Definition at line 195 of file MIDI.hpp .
- 199 send (
NoteOn , inNoteNumber, inVelocity, inChannel);
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
+
Definition at line 194 of file MIDI.hpp .
+
198 send (
NoteOn , inNoteNumber, inVelocity, inChannel);
+
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
@@ -751,9 +751,9 @@ template<class SerialPort , class Settings >
-
Definition at line 598 of file MIDI.hpp .
-
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
Definition at line 597 of file MIDI.hpp .
+
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
@@ -793,9 +793,9 @@ template<class SerialPort , class Settings >
-
Definition at line 588 of file MIDI.hpp .
-
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
Definition at line 587 of file MIDI.hpp .
+
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
@@ -844,11 +844,11 @@ template<class SerialPort , class Settings >
-Definition at line 561 of file MIDI.hpp .
- 564 const byte valMsb = 0x7f & (inValue >> 7);
565 const byte valLsb = 0x7f & inValue;
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
-
+
Definition at line 560 of file MIDI.hpp .
+
563 const byte valMsb = 0x7f & (inValue >> 7);
564 const byte valLsb = 0x7f & inValue;
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
+
@@ -904,10 +904,10 @@ template<class SerialPort , class Settings >
-Definition at line 576 of file MIDI.hpp .
-
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
+
Definition at line 575 of file MIDI.hpp .
+
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
@@ -956,10 +956,10 @@ template<class SerialPort , class Settings >
-Definition at line 293 of file MIDI.hpp .
- 297 send (
PitchBend , (bend & 0x7f), (bend >> 7) & 0x7f, inChannel);
#define MIDI_PITCHBEND_MIN
-
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
+
Definition at line 292 of file MIDI.hpp .
+
296 send (
PitchBend , (bend & 0x7f), (bend >> 7) & 0x7f, inChannel);
#define MIDI_PITCHBEND_MIN
+
+
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
@@ -1008,10 +1008,10 @@ template<class SerialPort , class Settings >
-Definition at line 308 of file MIDI.hpp .
- 312 const int value = int(inPitchValue *
double (scale));
#define MIDI_PITCHBEND_MAX
-
#define MIDI_PITCHBEND_MIN
-
void sendPitchBend(int inPitchValue, Channel inChannel)
Send a Pitch Bend message using a signed integer value.
+
Definition at line 307 of file MIDI.hpp .
+
311 const int value = int(inPitchValue *
double (scale));
#define MIDI_PITCHBEND_MAX
+
#define MIDI_PITCHBEND_MIN
+
void sendPitchBend(int inPitchValue, Channel inChannel)
Send a Pitch Bend message using a signed integer value.
@@ -1068,9 +1068,9 @@ template<class SerialPort , class Settings >
See also sendAfterTouch to send polyphonic and monophonic AfterTouch messages.
-Definition at line 254 of file MIDI.hpp .
-
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
+
Definition at line 253 of file MIDI.hpp .
+
+
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
@@ -1119,9 +1119,9 @@ template<class SerialPort , class Settings >
-Definition at line 226 of file MIDI.hpp .
-
-
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
+
Definition at line 225 of file MIDI.hpp .
+
+
void send(MidiType inType, DataByte inData1, DataByte inData2, Channel inChannel)
Generate and send a MIDI message from the values given.
@@ -1160,14 +1160,14 @@ template<class SerialPort , class Settings >
See also MidiType
-Definition at line 437 of file MIDI.hpp .
- 450 mSerial.write((
byte )inType);
-
System Real Time - Timing Clock.
-
System Real Time - Continue.
-
System Real Time - Start.
-
-
System Real Time - Active Sensing.
-
System Real Time - System Reset.
+
Definition at line 436 of file MIDI.hpp .
+
449 mSerial.write((
byte )inType);
+
System Real Time - Timing Clock.
+
System Real Time - Continue.
+
System Real Time - Start.
+
+
System Real Time - Active Sensing.
+
System Real Time - System Reset.
@@ -1207,9 +1207,9 @@ template<class SerialPort , class Settings >
-
Definition at line 518 of file MIDI.hpp .
-
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
Definition at line 517 of file MIDI.hpp .
+
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
@@ -1249,9 +1249,9 @@ template<class SerialPort , class Settings >
-
Definition at line 508 of file MIDI.hpp .
-
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
Definition at line 507 of file MIDI.hpp .
+
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
@@ -1300,11 +1300,11 @@ template<class SerialPort , class Settings >
-Definition at line 481 of file MIDI.hpp .
- 484 const byte valMsb = 0x7f & (inValue >> 7);
485 const byte valLsb = 0x7f & inValue;
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
-
+
Definition at line 480 of file MIDI.hpp .
+
483 const byte valMsb = 0x7f & (inValue >> 7);
484 const byte valLsb = 0x7f & inValue;
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
+
@@ -1360,10 +1360,10 @@ template<class SerialPort , class Settings >
-Definition at line 496 of file MIDI.hpp .
-
-
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
-
+
Definition at line 495 of file MIDI.hpp .
+
+
void sendControlChange(DataByte inControlNumber, DataByte inControlValue, Channel inChannel)
Send a Control Change message.
+
@@ -1401,10 +1401,10 @@ template<class SerialPort , class Settings >
-Definition at line 405 of file MIDI.hpp .
- 408 mSerial.write(inBeats & 0x7f);
409 mSerial.write((inBeats >> 7) & 0x7f);
411 if (Settings::UseRunningStatus)
System Common - Song Position Pointer.
-
-
+
Definition at line 404 of file MIDI.hpp .
+
407 mSerial.write(inBeats & 0x7f);
408 mSerial.write((inBeats >> 7) & 0x7f);
410 if (Settings::UseRunningStatus)
System Common - Song Position Pointer.
+
+
@@ -1436,10 +1436,10 @@ template<class SerialPort , class Settings >
Send a Song Select message.
-Definition at line 419 of file MIDI.hpp .
- 422 mSerial.write(inSongNumber & 0x7f);
424 if (Settings::UseRunningStatus)
System Common - Song Select.
-
-
+
Definition at line 418 of file MIDI.hpp .
+
421 mSerial.write(inSongNumber & 0x7f);
423 if (Settings::UseRunningStatus)
System Common - Song Select.
+
+
@@ -1495,8 +1495,8 @@ template<class SerialPort , class Settings >
-Definition at line 326 of file MIDI.hpp .
- 330 const bool writeBeginEndBytes = !inArrayContainsBoundaries;
332 if (writeBeginEndBytes)
337 for (
unsigned i = 0; i < inLength; ++i)
339 mSerial.write(inArray[i]);
342 if (writeBeginEndBytes)
347 if (Settings::UseRunningStatus)
+
Definition at line 325 of file MIDI.hpp .
+
329 const bool writeBeginEndBytes = !inArrayContainsBoundaries;
331 if (writeBeginEndBytes)
336 for (
unsigned i = 0; i < inLength; ++i)
338 mSerial.write(inArray[i]);
341 if (writeBeginEndBytes)
346 if (Settings::UseRunningStatus)
@@ -1545,9 +1545,9 @@ template<class SerialPort , class Settings >
-Definition at line 376 of file MIDI.hpp .
- 379 const byte data = (((inTypeNibble & 0x07) << 4) | (inValuesNibble & 0x0f));
void sendTimeCodeQuarterFrame(DataByte inTypeNibble, DataByte inValuesNibble)
Send a MIDI Time Code Quarter Frame.
-
+
Definition at line 375 of file MIDI.hpp .
+
378 const byte data = (((inTypeNibble & 0x07) << 4) | (inValuesNibble & 0x0f));
void sendTimeCodeQuarterFrame(DataByte inTypeNibble, DataByte inValuesNibble)
Send a MIDI Time Code Quarter Frame.
+
@@ -1585,10 +1585,10 @@ template<class SerialPort , class Settings >
-Definition at line 390 of file MIDI.hpp .
- 393 mSerial.write(inData);
395 if (Settings::UseRunningStatus)
System Common - MIDI Time Code Quarter Frame.
-
-
+
Definition at line 389 of file MIDI.hpp .
+
392 mSerial.write(inData);
394 if (Settings::UseRunningStatus)
System Common - MIDI Time Code Quarter Frame.
+
+
@@ -1620,9 +1620,9 @@ template<class SerialPort , class Settings >
Send a Tune Request message.
When a MIDI unit receives this message, it should tune its oscillators (if equipped with any).
-Definition at line 359 of file MIDI.hpp .
- 363 if (Settings::UseRunningStatus)
-
System Common - Tune Request.
+
Definition at line 358 of file MIDI.hpp .
+
362 if (Settings::UseRunningStatus)
+
System Common - Tune Request.
@@ -1631,7 +1631,7 @@ template<class SerialPort , class Settings >
diff --git a/a00042.html b/a00042.html
index 1fd9058..58a51e8 100644
--- a/a00042.html
+++ b/a00042.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -165,8 +165,8 @@ template<class SerialPort , class Settings >
Check if a valid message is stored in the structure.
-Definition at line 1064 of file MIDI.hpp .
-
@@ -198,8 +198,8 @@ template<class SerialPort , class Settings >
Get the channel of the message stored in the structure.
Returns Channel range is 1 to 16. For non-channel messages, this will return 0.
-Definition at line 1022 of file MIDI.hpp .
-
@@ -231,8 +231,8 @@ template<class SerialPort , class Settings >
Returns channel in the range 1-16.
-Definition at line 1118 of file MIDI.hpp .
- 1120 return (inStatus & 0x0f) + 1;
+Definition at line 1117 of file MIDI.hpp .
+ 1119 return (inStatus & 0x0f) + 1;
@@ -262,8 +262,8 @@ template<class SerialPort , class Settings >
Get the first data byte of the last received message.
-Definition at line 1029 of file MIDI.hpp .
-
@@ -294,8 +294,8 @@ template<class SerialPort , class Settings >
Get the second data byte of the last received message.
-Definition at line 1036 of file MIDI.hpp .
-
@@ -324,8 +324,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1072 of file MIDI.hpp .
-
1074 return mInputChannel;
+
Definition at line 1071 of file MIDI.hpp .
+
1073 return mInputChannel;
@@ -356,8 +356,8 @@ template<class SerialPort , class Settings >
Get the System Exclusive byte array.
See also getSysExArrayLength to get the array's length in bytes.
-Definition at line 1046 of file MIDI.hpp .
-DataByte sysexArray[sSysExMaxSize]
+
Definition at line 1045 of file MIDI.hpp .
+
DataByte sysexArray[sSysExMaxSize]
@@ -389,8 +389,8 @@ template<class SerialPort , class Settings >
Get the lenght of the System Exclusive array.
It is coded using data1 as LSB and data2 as MSB.
Returns The array's length, in bytes.
-Definition at line 1057 of file MIDI.hpp .
-unsigned getSysExSize() const
+
Definition at line 1056 of file MIDI.hpp .
+
unsigned getSysExSize() const
@@ -422,8 +422,8 @@ template<class SerialPort , class Settings >
Get the last received message's type.
Returns an enumerated type.
See also MidiType
-Definition at line 1011 of file MIDI.hpp .
-
@@ -456,9 +456,9 @@ template<class SerialPort , class Settings >
Extract an enumerated MIDI type from a status byte.
This is a utility static method, used internally, made public so you can handle MidiTypes more easily.
-Definition at line 1095 of file MIDI.hpp .
- 1097 if ((inStatus < 0x80) ||
1098 (inStatus == 0xf4) ||
1099 (inStatus == 0xf5) ||
1100 (inStatus == 0xf9) ||
1106 if (inStatus < 0xf0)
-
+
Definition at line 1094 of file MIDI.hpp .
+
1096 if ((inStatus < 0x80) ||
1097 (inStatus == 0xf4) ||
1098 (inStatus == 0xf5) ||
1099 (inStatus == 0xf9) ||
1105 if (inStatus < 0xf0)
+
@@ -488,14 +488,14 @@ template<class SerialPort , class Settings >
-
Definition at line 1124 of file MIDI.hpp .
-
-
Channel (monophonic) AfterTouch.
-
-
-
Control Change / Channel Mode.
-
-
+
Definition at line 1123 of file MIDI.hpp .
+
+
Channel (monophonic) AfterTouch.
+
+
+
Control Change / Channel Mode.
+
+
@@ -530,8 +530,8 @@ template<class SerialPort , class Settings >
If the Thru is enabled and the message matches the filter, it is sent back on the MIDI output.
See also see setInputChannel()
-Definition at line 644 of file MIDI.hpp .
- 646 return read (mInputChannel);
bool read()
Read messages from the serial port using the main input channel.
+
Definition at line 643 of file MIDI.hpp .
+
645 return read (mInputChannel);
bool read()
Read messages from the serial port using the main input channel.
@@ -563,8 +563,8 @@ template<class SerialPort , class Settings >
Read messages on a specified channel.
-Definition at line 652 of file MIDI.hpp .
- 660 handleNullVelocityNoteOnAsNoteOff();
661 const bool channelMatch = inputFilter(inChannel);
668 thruFilter(inChannel);
+
Definition at line 651 of file MIDI.hpp .
+
659 handleNullVelocityNoteOnAsNoteOff();
660 const bool channelMatch = inputFilter(inChannel);
667 thruFilter(inChannel);
@@ -602,8 +602,8 @@ template<class SerialPort , class Settings >
-Definition at line 1082 of file MIDI.hpp .
- 1084 mInputChannel = inChannel;
+Definition at line 1081 of file MIDI.hpp .
+ 1083 mInputChannel = inChannel;
@@ -611,7 +611,7 @@ template<class SerialPort , class Settings >
diff --git a/a00043.html b/a00043.html
index 2239344..9e397e7 100644
--- a/a00043.html
+++ b/a00043.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -165,25 +165,25 @@ template<class SerialPort , class Settings >
-Definition at line 1167 of file MIDI.hpp .
- 1171 case NoteOff : mNoteOffCallback = 0;
break ;
1172 case NoteOn : mNoteOnCallback = 0;
break ;
1177 case PitchBend : mPitchBendCallback = 0;
break ;
1181 case SongSelect : mSongSelectCallback = 0;
break ;
1182 case TuneRequest : mTuneRequestCallback = 0;
break ;
1183 case Clock : mClockCallback = 0;
break ;
1184 case Start : mStartCallback = 0;
break ;
1185 case Continue : mContinueCallback = 0;
break ;
1186 case Stop : mStopCallback = 0;
break ;
1188 case SystemReset : mSystemResetCallback = 0;
break ;
System Common - Song Position Pointer.
-
-
System Common - Song Select.
-
-
-
System Real Time - Timing Clock.
-
System Common - MIDI Time Code Quarter Frame.
-
Channel (monophonic) AfterTouch.
-
-
System Real Time - Continue.
-
System Real Time - Start.
-
-
Control Change / Channel Mode.
-
System Common - Tune Request.
-
-
System Real Time - Active Sensing.
-
-
System Real Time - System Reset.
+
Definition at line 1166 of file MIDI.hpp .
+
1170 case NoteOff : mNoteOffCallback = 0;
break ;
1171 case NoteOn : mNoteOnCallback = 0;
break ;
1176 case PitchBend : mPitchBendCallback = 0;
break ;
1180 case SongSelect : mSongSelectCallback = 0;
break ;
1181 case TuneRequest : mTuneRequestCallback = 0;
break ;
1182 case Clock : mClockCallback = 0;
break ;
1183 case Start : mStartCallback = 0;
break ;
1184 case Continue : mContinueCallback = 0;
break ;
1185 case Stop : mStopCallback = 0;
break ;
1187 case SystemReset : mSystemResetCallback = 0;
break ;
System Common - Song Position Pointer.
+
+
System Common - Song Select.
+
+
+
System Real Time - Timing Clock.
+
System Common - MIDI Time Code Quarter Frame.
+
Channel (monophonic) AfterTouch.
+
+
System Real Time - Continue.
+
System Real Time - Start.
+
+
Control Change / Channel Mode.
+
System Common - Tune Request.
+
+
System Real Time - Active Sensing.
+
+
System Real Time - System Reset.
@@ -213,8 +213,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1157 of file MIDI.hpp .
-
1157 { mActiveSensingCallback = fptr; }
+
Definition at line 1156 of file MIDI.hpp .
+
1156 { mActiveSensingCallback = fptr; }
@@ -243,8 +243,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1146 of file MIDI.hpp .
-
1146 { mAfterTouchChannelCallback = fptr; }
+
Definition at line 1145 of file MIDI.hpp .
+
1145 { mAfterTouchChannelCallback = fptr; }
@@ -273,8 +273,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1143 of file MIDI.hpp .
-
1143 { mAfterTouchPolyCallback = fptr; }
+
Definition at line 1142 of file MIDI.hpp .
+
1142 { mAfterTouchPolyCallback = fptr; }
@@ -303,8 +303,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1153 of file MIDI.hpp .
-
1153 { mClockCallback = fptr; }
+
Definition at line 1152 of file MIDI.hpp .
+
1152 { mClockCallback = fptr; }
@@ -333,8 +333,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1155 of file MIDI.hpp .
-
1155 { mContinueCallback = fptr; }
+
Definition at line 1154 of file MIDI.hpp .
+
1154 { mContinueCallback = fptr; }
@@ -363,8 +363,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1144 of file MIDI.hpp .
-
1144 { mControlChangeCallback = fptr; }
+
Definition at line 1143 of file MIDI.hpp .
+
1143 { mControlChangeCallback = fptr; }
@@ -393,8 +393,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1141 of file MIDI.hpp .
-
1141 { mNoteOffCallback = fptr; }
+
Definition at line 1140 of file MIDI.hpp .
+
1140 { mNoteOffCallback = fptr; }
@@ -423,8 +423,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1142 of file MIDI.hpp .
-
1142 { mNoteOnCallback = fptr; }
+
Definition at line 1141 of file MIDI.hpp .
+
1141 { mNoteOnCallback = fptr; }
@@ -453,8 +453,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1147 of file MIDI.hpp .
-
1147 { mPitchBendCallback = fptr; }
+
Definition at line 1146 of file MIDI.hpp .
+
1146 { mPitchBendCallback = fptr; }
@@ -483,8 +483,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1145 of file MIDI.hpp .
-
1145 { mProgramChangeCallback = fptr; }
+
Definition at line 1144 of file MIDI.hpp .
+
1144 { mProgramChangeCallback = fptr; }
@@ -513,8 +513,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1150 of file MIDI.hpp .
-
1150 { mSongPositionCallback = fptr; }
+
Definition at line 1149 of file MIDI.hpp .
+
1149 { mSongPositionCallback = fptr; }
@@ -543,8 +543,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1151 of file MIDI.hpp .
-
1151 { mSongSelectCallback = fptr; }
+
Definition at line 1150 of file MIDI.hpp .
+
1150 { mSongSelectCallback = fptr; }
@@ -573,8 +573,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1154 of file MIDI.hpp .
-
1154 { mStartCallback = fptr; }
+
Definition at line 1153 of file MIDI.hpp .
+
1153 { mStartCallback = fptr; }
@@ -603,8 +603,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1156 of file MIDI.hpp .
-
1156 { mStopCallback = fptr; }
+
Definition at line 1155 of file MIDI.hpp .
+
1155 { mStopCallback = fptr; }
@@ -633,8 +633,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1148 of file MIDI.hpp .
-
1148 { mSystemExclusiveCallback = fptr; }
+
Definition at line 1147 of file MIDI.hpp .
+
1147 { mSystemExclusiveCallback = fptr; }
@@ -663,8 +663,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1158 of file MIDI.hpp .
-
1158 { mSystemResetCallback = fptr; }
+
Definition at line 1157 of file MIDI.hpp .
+
1157 { mSystemResetCallback = fptr; }
@@ -693,8 +693,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1149 of file MIDI.hpp .
-
1149 { mTimeCodeQuarterFrameCallback = fptr; }
+
Definition at line 1148 of file MIDI.hpp .
+
1148 { mTimeCodeQuarterFrameCallback = fptr; }
@@ -723,8 +723,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1152 of file MIDI.hpp .
-
1152 { mTuneRequestCallback = fptr; }
+
Definition at line 1151 of file MIDI.hpp .
+
1151 { mTuneRequestCallback = fptr; }
@@ -732,7 +732,7 @@ template<class SerialPort , class Settings >
diff --git a/a00044.html b/a00044.html
index 020a8d3..a8b6e3a 100644
--- a/a00044.html
+++ b/a00044.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -128,8 +128,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1260 of file MIDI.hpp .
-
1262 return mThruFilterMode;
+
Definition at line 1259 of file MIDI.hpp .
+
1261 return mThruFilterMode;
@@ -157,8 +157,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1266 of file MIDI.hpp .
-
1268 return mThruActivated;
+
Definition at line 1265 of file MIDI.hpp .
+
1267 return mThruActivated;
@@ -196,8 +196,8 @@ template<class SerialPort , class Settings >
See also Thru::Mode
-Definition at line 1253 of file MIDI.hpp .
- 1255 mThruFilterMode = inThruFilterMode;
1256 mThruActivated = mThruFilterMode !=
Thru::Off ;
Thru disabled (nothing passes through).
+
Definition at line 1252 of file MIDI.hpp .
+
1254 mThruFilterMode = inThruFilterMode;
1255 mThruActivated = mThruFilterMode !=
Thru::Off ;
Thru disabled (nothing passes through).
@@ -226,8 +226,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1279 of file MIDI.hpp .
-
1281 mThruActivated =
false ;
Thru disabled (nothing passes through).
+
Definition at line 1278 of file MIDI.hpp .
+
1280 mThruActivated =
false ;
Thru disabled (nothing passes through).
@@ -257,8 +257,8 @@ template<class SerialPort , class Settings >
-
Definition at line 1272 of file MIDI.hpp .
-
1274 mThruActivated =
true ;
1275 mThruFilterMode = inThruFilterMode;
+
Definition at line 1271 of file MIDI.hpp .
+
1273 mThruActivated =
true ;
1274 mThruFilterMode = inThruFilterMode;
@@ -266,7 +266,7 @@ template<class SerialPort , class Settings >
diff --git a/a00045.html b/a00045.html
index accb91a..0901465 100644
--- a/a00045.html
+++ b/a00045.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -163,7 +163,7 @@ $(document).ready(function(){initNavTree('a00048.html','');});
diff --git a/a00046.html b/a00046.html
deleted file mode 100644
index 333122a..0000000
--- a/a00046.html
+++ /dev/null
@@ -1,134 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: Member List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This is the complete list of members for RPN , including all inherited members.
-
-
-
-
-
-
diff --git a/a00047.html b/a00047.html
deleted file mode 100644
index 756efc2..0000000
--- a/a00047.html
+++ /dev/null
@@ -1,131 +0,0 @@
-
-
-
-
-
-
-
Arduino MIDI Library: Member List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Arduino MIDI Library
- Version 4.3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This is the complete list of members for Thru , including all inherited members.
-
-
-
-
-
-
diff --git a/a00048.html b/a00048.html
index 7672c32..af9ef28 100644
--- a/a00048.html
+++ b/a00048.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -294,7 +294,7 @@ class MidiInterface< SerialPort, _Settings >
The main class for MIDI handling. It is templated over the type of serial port to provide abstraction from the hardware interface, meaning you can use HardwareSerial, SoftwareSerial or ak47's Uart classes. The only requirement is that the class implements the begin, read, write and available methods.
-
Definition at line 46 of file MIDI.h .
+
Definition at line 45 of file MIDI.h .
§ Settings
@@ -310,7 +310,7 @@ template<class SerialPort , class _Settings = DefaultSettings>
@@ -343,9 +343,9 @@ template<class SerialPort , class Settings >
Constructor for MidiInterface .
-Definition at line 35 of file MIDI.hpp .
- 40 , mPendingMessageExpectedLenght(0)
41 , mPendingMessageIndex(0)
42 , mCurrentRpnNumber(0xffff)
43 , mCurrentNrpnNumber(0xffff)
44 , mThruActivated(
true )
49 mAfterTouchPolyCallback = 0;
50 mControlChangeCallback = 0;
51 mProgramChangeCallback = 0;
52 mAfterTouchChannelCallback = 0;
53 mPitchBendCallback = 0;
54 mSystemExclusiveCallback = 0;
55 mTimeCodeQuarterFrameCallback = 0;
56 mSongPositionCallback = 0;
57 mSongSelectCallback = 0;
58 mTuneRequestCallback = 0;
61 mContinueCallback = 0;
63 mActiveSensingCallback = 0;
64 mSystemResetCallback = 0;
-
Fully enabled Thru (every incoming message is sent back).
+
Definition at line 34 of file MIDI.hpp .
+
39 , mPendingMessageExpectedLenght(0)
40 , mPendingMessageIndex(0)
41 , mCurrentRpnNumber(0xffff)
42 , mCurrentNrpnNumber(0xffff)
43 , mThruActivated(
true )
48 mAfterTouchPolyCallback = 0;
49 mControlChangeCallback = 0;
50 mProgramChangeCallback = 0;
51 mAfterTouchChannelCallback = 0;
52 mPitchBendCallback = 0;
53 mSystemExclusiveCallback = 0;
54 mTimeCodeQuarterFrameCallback = 0;
55 mSongPositionCallback = 0;
56 mSongSelectCallback = 0;
57 mTuneRequestCallback = 0;
60 mContinueCallback = 0;
62 mActiveSensingCallback = 0;
63 mSystemResetCallback = 0;
+
Fully enabled Thru (every incoming message is sent back).
@@ -377,8 +377,8 @@ template<class SerialPort , class Settings >
Destructor for MidiInterface .
This is not really useful for the Arduino, as it is never called...
-Definition at line 72 of file MIDI.hpp .
-
+Definition at line 71 of file MIDI.hpp .
+
@@ -406,14 +406,14 @@ template<class SerialPort , class Settings >
Full thru mirroring
-Definition at line 85 of file MIDI.hpp .
- 89 mSerial.
template open<Settings::BaudRate>();
91 mSerial.begin(Settings::BaudRate);
94 mInputChannel = inChannel;
98 mPendingMessageIndex = 0;
99 mPendingMessageExpectedLenght = 0;
101 mCurrentRpnNumber = 0xffff;
102 mCurrentNrpnNumber = 0xffff;
104 mMessage.
valid =
false ;
111 mThruActivated =
true ;
-
-
-
-
-
Fully enabled Thru (every incoming message is sent back).
-
+
Definition at line 84 of file MIDI.hpp .
+
88 mSerial.
template open<Settings::BaudRate>();
90 mSerial.begin(Settings::BaudRate);
93 mInputChannel = inChannel;
97 mPendingMessageIndex = 0;
98 mPendingMessageExpectedLenght = 0;
100 mCurrentRpnNumber = 0xffff;
101 mCurrentNrpnNumber = 0xffff;
103 mMessage.
valid =
false ;
110 mThruActivated =
true ;
+
+
+
+
+
Fully enabled Thru (every incoming message is sent back).
+
@@ -427,7 +427,7 @@ template<class SerialPort , class Settings >
diff --git a/a00049.html b/a00049.html
index ae20cb4..5c27747 100644
--- a/a00049.html
+++ b/a00049.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -97,7 +97,7 @@ $(document).ready(function(){initNavTree('a00052.html','');});
diff --git a/a00052.html b/a00052.html
index 648a3e1..014e55e 100644
--- a/a00052.html
+++ b/a00052.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -102,7 +102,7 @@ Public Types
Enumeration of Thru filter modes
-
Definition at line 92 of file midi_Defs.h .
+
Definition at line 91 of file midi_Defs.h .
§ Mode
@@ -126,11 +126,11 @@ Public Types
-
Definition at line 94 of file midi_Defs.h .
-
Thru disabled (nothing passes through).
-
Only the messages on the Input Channel will be sent back.
-
All the messages but the ones on the Input Channel will be sent back.
-
Fully enabled Thru (every incoming message is sent back).
+
Definition at line 93 of file midi_Defs.h .
+
Thru disabled (nothing passes through).
+
Only the messages on the Input Channel will be sent back.
+
All the messages but the ones on the Input Channel will be sent back.
+
Fully enabled Thru (every incoming message is sent back).
@@ -143,7 +143,7 @@ Public Types
diff --git a/a00053.html b/a00053.html
index f1681ef..d33167d 100644
--- a/a00053.html
+++ b/a00053.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -100,7 +100,7 @@ $(document).ready(function(){initNavTree('a00056.html','');});
diff --git a/a00056.html b/a00056.html
index 05b2364..0768161 100644
--- a/a00056.html
+++ b/a00056.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -107,7 +107,7 @@ Public Types
-
Definition at line 194 of file midi_Defs.h .
+
Definition at line 193 of file midi_Defs.h .
§ RegisteredParameterNumbers
@@ -130,14 +130,14 @@ Public Types
NullFunction
-
Definition at line 196 of file midi_Defs.h .
-
@@ -150,7 +150,7 @@ Public Types
diff --git a/a00057.html b/a00057.html
index 99232b4..4d4ad7b 100644
--- a/a00057.html
+++ b/a00057.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -101,7 +101,7 @@ $(document).ready(function(){initNavTree('a00060.html','');});
diff --git a/a00060.html b/a00060.html
index 9f0c099..430dd38 100644
--- a/a00060.html
+++ b/a00060.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -125,7 +125,7 @@ struct Message< SysExMaxSize >
The Message structure contains decoded data of a MIDI message read from the serial port with read()
-
Definition at line 40 of file midi_Message.h .
+
Definition at line 39 of file midi_Message.h .
§ Message()
@@ -154,16 +154,16 @@ template<unsigned SysExMaxSize>
Default constructor
Initializes the attributes with their default values.
-
Definition at line 45 of file midi_Message.h .
-
-
static const unsigned sSysExMaxSize
-
-
-
DataByte sysexArray[sSysExMaxSize]
-
-
-
-
+
Definition at line 44 of file midi_Message.h .
+
+
static const unsigned sSysExMaxSize
+
+
+
DataByte sysexArray[sSysExMaxSize]
+
+
+
+
@@ -193,10 +193,10 @@ template<unsigned SysExMaxSize>
-
Definition at line 92 of file midi_Message.h .
-
94 const unsigned size = unsigned(
data2 ) << 8 |
data1 ;
-
static const unsigned sSysExMaxSize
-
+
Definition at line 91 of file midi_Message.h .
+
93 const unsigned size = unsigned(
data2 ) << 8 |
data1 ;
+
static const unsigned sSysExMaxSize
+
@@ -217,7 +217,7 @@ template<unsigned SysExMaxSize>
The MIDI channel on which the message was recieved.
Value goes from 1 to 16.
-Definition at line 62 of file midi_Message.h .
+Definition at line 61 of file midi_Message.h .
@@ -237,7 +237,7 @@ template<unsigned SysExMaxSize>
The first data byte.
Value goes from 0 to 127.
-Definition at line 72 of file midi_Message.h .
+Definition at line 71 of file midi_Message.h .
@@ -257,7 +257,7 @@ template<unsigned SysExMaxSize>
The second data byte. If the message is only 2 bytes long, this one is null.
Value goes from 0 to 127.
-Definition at line 78 of file midi_Message.h .
+Definition at line 77 of file midi_Message.h .
@@ -284,7 +284,7 @@ template<unsigned SysExMaxSize>
@@ -304,7 +304,7 @@ template<unsigned SysExMaxSize>
System Exclusive dedicated byte array.
Array length is stocked on 16 bits, in data1 (LSB) and data2 (MSB)
-Definition at line 84 of file midi_Message.h .
+Definition at line 83 of file midi_Message.h .
@@ -323,7 +323,7 @@ template<unsigned SysExMaxSize>
The type of the message (see the MidiType enum for types reference)
-
Definition at line 67 of file midi_Message.h .
+
Definition at line 66 of file midi_Message.h .
@@ -342,7 +342,7 @@ template<unsigned SysExMaxSize>
This boolean indicates if the message is valid or not. There is no channel consideration here, validity means the message respects the MIDI norm.
-
Definition at line 90 of file midi_Message.h .
+
Definition at line 89 of file midi_Message.h .
@@ -355,7 +355,7 @@ template<unsigned SysExMaxSize>
diff --git a/a00061.html b/a00061.html
index 0dfb576..12687e6 100644
--- a/a00061.html
+++ b/a00061.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -101,7 +101,7 @@ $(document).ready(function(){initNavTree('a00064.html','');});
diff --git a/a00064.html b/a00064.html
index eaac88d..82d1208 100644
--- a/a00064.html
+++ b/a00064.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -116,7 +116,7 @@ Public Member Functions
class RingBuffer< DataType, Size >
-
Definition at line 36 of file midi_RingBuffer.h .
+
Definition at line 35 of file midi_RingBuffer.h .
§ RingBuffer()
@@ -135,8 +135,8 @@ template<typename DataType , int Size>
-
Definition at line 34 of file midi_RingBuffer.hpp .
-
38 memset(mData, DataType(0), Size *
sizeof (DataType));
+
Definition at line 33 of file midi_RingBuffer.hpp .
+
37 memset(mData, DataType(0), Size *
sizeof (DataType));
@@ -156,8 +156,8 @@ template<typename DataType , int Size>
@@ -178,8 +178,8 @@ template<typename DataType , int Size>
-
Definition at line 93 of file midi_RingBuffer.hpp .
-
95 memset(mData, DataType(0), Size *
sizeof (DataType));
+
Definition at line 92 of file midi_RingBuffer.hpp .
+
94 memset(mData, DataType(0), Size *
sizeof (DataType));
@@ -199,8 +199,8 @@ template<typename DataType , int Size>
-
Definition at line 49 of file midi_RingBuffer.hpp .
-
51 if (mReadHead == mWriteHead)
55 else if (mWriteHead > mReadHead)
57 return int(mWriteHead - mReadHead);
61 return int(mWriteHead - mData) + Size - int(mReadHead - mData);
+
Definition at line 48 of file midi_RingBuffer.hpp .
+
50 if (mReadHead == mWriteHead)
54 else if (mWriteHead > mReadHead)
56 return int(mWriteHead - mReadHead);
60 return int(mWriteHead - mData) + Size - int(mReadHead - mData);
@@ -220,8 +220,8 @@ template<typename DataType , int Size>
@@ -241,8 +241,8 @@ template<typename DataType , int Size>
-
Definition at line 103 of file midi_RingBuffer.hpp .
-
105 const DataType data = *mReadHead++;
106 if (mReadHead >= mData + Size)
+
Definition at line 102 of file midi_RingBuffer.hpp .
+
104 const DataType data = *mReadHead++;
105 if (mReadHead >= mData + Size)
@@ -273,8 +273,8 @@ template<typename DataType, int Size>
@@ -296,8 +296,8 @@ template<typename DataType, int Size>
-
Definition at line 74 of file midi_RingBuffer.hpp .
-
76 *mWriteHead++ = inData;
77 if (mWriteHead >= mData + Size)
+
Definition at line 73 of file midi_RingBuffer.hpp .
+
75 *mWriteHead++ = inData;
76 if (mWriteHead >= mData + Size)
@@ -328,8 +328,8 @@ template<typename DataType, int Size>
-
Definition at line 84 of file midi_RingBuffer.hpp .
-
86 for (
int i = 0; i < inSize; ++i)
void write(DataType inData)
+
Definition at line 83 of file midi_RingBuffer.hpp .
+
85 for (
int i = 0; i < inSize; ++i)
void write(DataType inData)
@@ -343,7 +343,7 @@ template<typename DataType, int Size>
diff --git a/a00065.html b/a00065.html
index 7f7cabc..50d7e12 100644
--- a/a00065.html
+++ b/a00065.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -97,7 +97,7 @@ $(document).ready(function(){initNavTree('a00068.html','');});
diff --git a/a00068.html b/a00068.html
index 092f7c9..6fea263 100644
--- a/a00068.html
+++ b/a00068.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -109,7 +109,7 @@ Static Public Attributes
Default Settings for the MIDI Library.
To change the default settings, don't edit them there, create a subclass and override the values in that subclass, then use the MIDI_CREATE_CUSTOM_INSTANCE macro to create your instance. The settings you don't override will keep their default value. Eg:
struct MySettings : public midi::DefaultSettings
{
};
-
Definition at line 50 of file midi_Settings.h .
+
Definition at line 49 of file midi_Settings.h .
§ BaudRate
@@ -133,7 +133,7 @@ Static Public Attributes
Override the default MIDI baudrate to transmit over USB serial, to a decoding program such as Hairless MIDI (set baudrate to 115200)
http://projectgus.github.io/hairless-midiserial/
-
Definition at line 74 of file midi_Settings.h .
+
Definition at line 73 of file midi_Settings.h .
@@ -160,7 +160,7 @@ Static Public Attributes
Set to true to get NoteOff events when receiving null-velocity NoteOn messages.
Set to false to get NoteOn events when receiving null-velocity NoteOn messages.
-Definition at line 62 of file midi_Settings.h .
+Definition at line 61 of file midi_Settings.h .
@@ -185,7 +185,7 @@ Set to false to get NoteOn events when receiving null-velocity NoteOn messages.
Maximum size of SysEx receivable. Decrease to save RAM if you don't expect to receive SysEx, or adjust accordingly.
-
Definition at line 79 of file midi_Settings.h .
+
Definition at line 78 of file midi_Settings.h .
@@ -210,7 +210,7 @@ Set to false to get NoteOn events when receiving null-velocity NoteOn messages.
Setting this to true will make MIDI.read parse only one byte of data for each call when data is available. This can speed up your application if receiving a lot of traffic, but might induce MIDI Thru and treatment latency.
-
Definition at line 68 of file midi_Settings.h .
+
Definition at line 67 of file midi_Settings.h .
@@ -236,7 +236,7 @@ Set to false to get NoteOn events when receiving null-velocity NoteOn messages.
Running status enables short messages when sending multiple values of the same type and channel.
Warning: does not work with some hardware, enable with caution.
-Definition at line 56 of file midi_Settings.h .
+Definition at line 55 of file midi_Settings.h .
@@ -249,7 +249,7 @@ Warning: does not work with some hardware, enable with caution.
diff --git a/a00069.html b/a00069.html
index 1db8339..9c5d75a 100644
--- a/a00069.html
+++ b/a00069.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -112,7 +112,7 @@ $(document).ready(function(){initNavTree('a00072.html','');});
diff --git a/a00072.html b/a00072.html
index b18e494..9cbfe3e 100644
--- a/a00072.html
+++ b/a00072.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -128,7 +128,7 @@ Static Public Member Functions
-
Definition at line 35 of file midi_UsbDefs.h .
+
Definition at line 34 of file midi_UsbDefs.h .
§ anonymous enum
@@ -163,26 +163,26 @@ Static Public Member Functions
singleByte
-
Definition at line 37 of file midi_UsbDefs.h .
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
Definition at line 36 of file midi_UsbDefs.h .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -211,21 +211,21 @@ Static Public Member Functions
-
Definition at line 64 of file midi_UsbDefs.h .
-
66 switch (inCodeIndexNumber)
-
-
-
-
-
-
-
-
-
-
-
-
-
+
Definition at line 63 of file midi_UsbDefs.h .
+
65 switch (inCodeIndexNumber)
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -238,7 +238,7 @@ Static Public Member Functions
diff --git a/a00073.html b/a00073.html
index ad8534c..f16aec2 100644
--- a/a00073.html
+++ b/a00073.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -101,7 +101,7 @@ $(document).ready(function(){initNavTree('a00076.html','');});
diff --git a/a00076.html b/a00076.html
index 3d239a2..83b034d 100644
--- a/a00076.html
+++ b/a00076.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -117,7 +117,7 @@ Public Attributes
-
Definition at line 97 of file midi_UsbDefs.h .
+
Definition at line 96 of file midi_UsbDefs.h .
§ UsbMidiEventPacket()
@@ -142,9 +142,9 @@ Public Attributes
@@ -172,8 +172,8 @@ Public Attributes
@@ -200,8 +200,8 @@ Public Attributes
@@ -228,8 +228,8 @@ Public Attributes
@@ -256,8 +256,8 @@ Public Attributes
@@ -285,9 +285,9 @@ Public Attributes
-
Definition at line 134 of file midi_UsbDefs.h .
-
136 mData [0] = *inData++;
-
void setMidiData(const byte *inData)
+
Definition at line 133 of file midi_UsbDefs.h .
+
135 mData [0] = *inData++;
+
void setMidiData(const byte *inData)
@@ -325,9 +325,9 @@ Public Attributes
-
Definition at line 106 of file midi_UsbDefs.h .
-
108 const byte msb = (0x0f & inCableNumber) << 4;
109 const byte lsb = (0x0f & inCodeIndexNumber);
110 mData [0] = msb | lsb;
-
+
Definition at line 105 of file midi_UsbDefs.h .
+
107 const byte msb = (0x0f & inCableNumber) << 4;
108 const byte lsb = (0x0f & inCodeIndexNumber);
109 mData [0] = msb | lsb;
+
@@ -355,8 +355,8 @@ Public Attributes
@@ -373,7 +373,7 @@ Public Attributes
@@ -386,7 +386,7 @@ Public Attributes
diff --git a/a00077.html b/a00077.html
index 00e10c2..575d6d5 100644
--- a/a00077.html
+++ b/a00077.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -98,7 +98,7 @@ $(document).ready(function(){initNavTree('a00080.html','');});
diff --git a/a00080.html b/a00080.html
index d00a2ab..fdad63a 100644
--- a/a00080.html
+++ b/a00080.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -111,7 +111,7 @@ Public Member Functions
class UsbTransport< BuffersSize >
-
Definition at line 38 of file midi_UsbTransport.h .
+
Definition at line 37 of file midi_UsbTransport.h .
§ UsbTransport()
@@ -138,8 +138,8 @@ template<unsigned BufferSize>
@@ -167,8 +167,8 @@ template<unsigned BufferSize>
@@ -197,8 +197,8 @@ template<unsigned BufferSize>
@@ -228,8 +228,8 @@ template<unsigned BufferSize>
@@ -258,8 +258,8 @@ template<unsigned BufferSize>
@@ -289,8 +289,8 @@ template<unsigned BufferSize>
-
Definition at line 68 of file midi_UsbTransport.hpp .
-
70 mTxBuffer.
write (inData);
71 recomposeAndSendTxPackets();
void write(DataType inData)
+
Definition at line 67 of file midi_UsbTransport.hpp .
+
69 mTxBuffer.
write (inData);
70 recomposeAndSendTxPackets();
void write(DataType inData)
@@ -304,7 +304,7 @@ template<unsigned BufferSize>
diff --git a/a00086.html b/a00086.html
index 283bf9a..e0a1170 100644
--- a/a00086.html
+++ b/a00086.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -94,7 +94,7 @@ When any message arrives to the Arduino, the LED is turned on, then we send a No
diff --git a/a00088.html b/a00088.html
index 7e1e19f..b75aedb 100644
--- a/a00088.html
+++ b/a00088.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -90,7 +90,7 @@ $(document).ready(function(){initNavTree('a00088.html','');});
diff --git a/a00090.html b/a00090.html
index 7ed09af..1fbcade 100644
--- a/a00090.html
+++ b/a00090.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -89,7 +89,7 @@ $(document).ready(function(){initNavTree('a00090.html','');});
diff --git a/a00092.html b/a00092.html
index a9a576a..2a11efb 100644
--- a/a00092.html
+++ b/a00092.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -89,7 +89,7 @@ $(document).ready(function(){initNavTree('a00092.html','');});
diff --git a/a00094.html b/a00094.html
index 023781b..31adda2 100644
--- a/a00094.html
+++ b/a00094.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -89,7 +89,7 @@ $(document).ready(function(){initNavTree('a00094.html','');});
diff --git a/a00096.html b/a00096.html
index 8c9b829..6418c4c 100644
--- a/a00096.html
+++ b/a00096.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -89,7 +89,7 @@ $(document).ready(function(){initNavTree('a00096.html','');});
diff --git a/annotated.html b/annotated.html
index 77033e4..2d4f4e6 100644
--- a/annotated.html
+++ b/annotated.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -102,7 +102,7 @@ $(document).ready(function(){initNavTree('annotated.html','');});
diff --git a/arrowdown.png b/arrowdown.png
deleted file mode 100644
index 0b63f6d..0000000
Binary files a/arrowdown.png and /dev/null differ
diff --git a/arrowright.png b/arrowright.png
deleted file mode 100644
index c6ee22f..0000000
Binary files a/arrowright.png and /dev/null differ
diff --git a/classes.html b/classes.html
index 915fd93..80b713a 100644
--- a/classes.html
+++ b/classes.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -107,7 +107,7 @@ $(document).ready(function(){initNavTree('classes.html','');});
diff --git a/dir_09481f2e998cf47f01eea124dd549c96.html b/dir_09481f2e998cf47f01eea124dd549c96.html
index 4e33c42..e19b282 100644
--- a/dir_09481f2e998cf47f01eea124dd549c96.html
+++ b/dir_09481f2e998cf47f01eea124dd549c96.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -98,7 +98,7 @@ Directories
diff --git a/dir_24ed65e94774636179756562244c7302.html b/dir_24ed65e94774636179756562244c7302.html
index 1e8e736..5258ee2 100644
--- a/dir_24ed65e94774636179756562244c7302.html
+++ b/dir_24ed65e94774636179756562244c7302.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -96,7 +96,7 @@ Directories
diff --git a/dir_4f69b3b5f50f765bf848b47dadc3c85f.html b/dir_4f69b3b5f50f765bf848b47dadc3c85f.html
index b373a7f..383fb53 100644
--- a/dir_4f69b3b5f50f765bf848b47dadc3c85f.html
+++ b/dir_4f69b3b5f50f765bf848b47dadc3c85f.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -130,7 +130,7 @@ Files
diff --git a/dir_645b81139e363ce037e25dbaed8c5263.html b/dir_645b81139e363ce037e25dbaed8c5263.html
index ba33683..28e8e01 100644
--- a/dir_645b81139e363ce037e25dbaed8c5263.html
+++ b/dir_645b81139e363ce037e25dbaed8c5263.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -96,7 +96,7 @@ Directories
diff --git a/dir_854e32f92a9eefd8d2619cb52d802339.html b/dir_854e32f92a9eefd8d2619cb52d802339.html
index 1340da9..ce18792 100644
--- a/dir_854e32f92a9eefd8d2619cb52d802339.html
+++ b/dir_854e32f92a9eefd8d2619cb52d802339.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -96,7 +96,7 @@ Files
diff --git a/dir_8e174b5f2a67f3e976f171aae2086cba.html b/dir_8e174b5f2a67f3e976f171aae2086cba.html
index fc55e9f..a1d928f 100644
--- a/dir_8e174b5f2a67f3e976f171aae2086cba.html
+++ b/dir_8e174b5f2a67f3e976f171aae2086cba.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -96,7 +96,7 @@ Directories
diff --git a/examples.html b/examples.html
index 73270f0..742dc7e 100644
--- a/examples.html
+++ b/examples.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -103,7 +103,7 @@ $(document).ready(function(){initNavTree('examples.html','');});
diff --git a/files.html b/files.html
index 612dafe..368431e 100644
--- a/files.html
+++ b/files.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -112,7 +112,7 @@ $(document).ready(function(){initNavTree('files.html','');});
diff --git a/functions.html b/functions.html
index 9b9a324..a7e5dac 100644
--- a/functions.html
+++ b/functions.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -556,7 +556,7 @@ $(document).ready(function(){initNavTree('functions.html','');});
diff --git a/functions_enum.html b/functions_enum.html
index 7d16493..7a032ec 100644
--- a/functions_enum.html
+++ b/functions_enum.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -93,7 +93,7 @@ $(document).ready(function(){initNavTree('functions_enum.html','');});
diff --git a/functions_eval.html b/functions_eval.html
index 2c5bc30..f89b386 100644
--- a/functions_eval.html
+++ b/functions_eval.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -177,7 +177,7 @@ $(document).ready(function(){initNavTree('functions_eval.html','');});
diff --git a/functions_func.html b/functions_func.html
index e18dc50..533d39f 100644
--- a/functions_func.html
+++ b/functions_func.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -398,7 +398,7 @@ $(document).ready(function(){initNavTree('functions_func.html','');});
diff --git a/functions_type.html b/functions_type.html
index cf3e2af..5498a58 100644
--- a/functions_type.html
+++ b/functions_type.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -90,7 +90,7 @@ $(document).ready(function(){initNavTree('functions_type.html','');});
diff --git a/functions_vars.html b/functions_vars.html
index b74b2af..b9507a7 100644
--- a/functions_vars.html
+++ b/functions_vars.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -126,7 +126,7 @@ $(document).ready(function(){initNavTree('functions_vars.html','');});
diff --git a/globals.html b/globals.html
index 20de687..3ed70ba 100644
--- a/globals.html
+++ b/globals.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -466,7 +466,7 @@ $(document).ready(function(){initNavTree('globals.html','');});
diff --git a/globals_defs.html b/globals_defs.html
index 3b4f140..859b47c 100644
--- a/globals_defs.html
+++ b/globals_defs.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -132,7 +132,7 @@ $(document).ready(function(){initNavTree('globals_defs.html','');});
diff --git a/globals_enum.html b/globals_enum.html
index eb1783d..dc0297f 100644
--- a/globals_enum.html
+++ b/globals_enum.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -93,7 +93,7 @@ $(document).ready(function(){initNavTree('globals_enum.html','');});
diff --git a/globals_eval.html b/globals_eval.html
index 8bcc144..299ee16 100644
--- a/globals_eval.html
+++ b/globals_eval.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -381,7 +381,7 @@ $(document).ready(function(){initNavTree('globals_eval.html','');});
diff --git a/globals_func.html b/globals_func.html
index 720973c..9d72e9b 100644
--- a/globals_func.html
+++ b/globals_func.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -98,7 +98,7 @@ $(document).ready(function(){initNavTree('globals_func.html','');});
diff --git a/globals_type.html b/globals_type.html
index b177f7c..0e3d0c4 100644
--- a/globals_type.html
+++ b/globals_type.html
@@ -29,7 +29,7 @@
Arduino MIDI Library
- Version 4.3
+ Version 4.3.1
@@ -102,7 +102,7 @@ $(document).ready(function(){initNavTree('globals_type.html','');});