C ++ Callbacki z celem-C, aplikacja do RtMidi
Przeczytałem kilka poprzednich dyskusji na ten temat, ale ponieważ jestem stosunkowo nowy w Objective-C, tak naprawdę ich nie rozumiem. (Bloki, selektory i delegat są dla mnie bardzo nowe).
Oto sytuacja: używam tych abstrakcyjnych klas RtMidi, które są napisane w c ++
void MidiInApi :: setCallback( RtMidiIn::RtMidiCallback callback, void *userData )
{
if ( inputData_.usingCallback ) {
errorString_ = "MidiInApi::setCallback: a callback function is already set!";
RtMidi::error( RtError::WARNING, errorString_ );
return;
}
if ( !callback ) {
errorString_ = "RtMidiIn::setCallback: callback function value is invalid!";
RtMidi::error( RtError::WARNING, errorString_ );
return;
}
inputData_.userCallback = (void *) callback;
inputData_.userData = userData;
inputData_.usingCallback = true;
}
Mam także klasę, która Reciever implementuje to wywołanie zwrotne (rtMidiCallback). W pewnym momencie w moim głównym pliku muszę napisać coś takiego
midiIn->setCallback(rtMidiCallback);
Byłoby to w kontekście c ++, ale w Objective-C nie mam pojęcia, jak to zrobić.
Jeśli masz jakieś pomysły, wskazówki, chętnie omówię to z tobą. Dziękuję Ci bardzo
Najlepiej,
greg.