| 669 | } |
| 670 | |
| 671 | void MidiInApi :: setCallback( RtMidiIn::RtMidiCallback callback, void *userData ) |
| 672 | { |
| 673 | if ( inputData_.usingCallback ) { |
| 674 | errorString_ = "MidiInApi::setCallback: a callback function is already set!"; |
| 675 | error( RtMidiError::WARNING, errorString_ ); |
| 676 | return; |
| 677 | } |
| 678 | |
| 679 | if ( !callback ) { |
| 680 | errorString_ = "RtMidiIn::setCallback: callback function value is invalid!"; |
| 681 | error( RtMidiError::WARNING, errorString_ ); |
| 682 | return; |
| 683 | } |
| 684 | |
| 685 | inputData_.userCallback = callback; |
| 686 | inputData_.userData = userData; |
| 687 | inputData_.usingCallback = true; |
| 688 | } |
| 689 | |
| 690 | void MidiInApi :: cancelCallback() |
| 691 | { |