CoreMidi Spazio dei nomi
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Lo spazio dei nomi CoreMidi fornisce classi per interagire con il sottosistema MIDI.
Classi
IOErrorEventArgs |
Fornisce dati per l'evento IOError. |
Midi |
Metodi e costanti globali per l'uso di CoreMidi. |
Midi.Notifications |
Notifica pubblicata dalla Midi classe . |
MidiCIProfile |
Lo spazio dei nomi CoreMidi fornisce classi per interagire con il sottosistema MIDI. |
MidiCIProfileState |
Lo spazio dei nomi CoreMidi fornisce classi per interagire con il sottosistema MIDI. |
MidiCISession |
Lo spazio dei nomi CoreMidi fornisce classi per interagire con il sottosistema MIDI. |
MidiClient |
Punto di ingresso principale da usare MIDI in MacOS X e iOS. |
MidiDevice |
Rappresenta un dispositivo MIDI (in genere rappresentano un dispositivo hardware, ma esistono anche dispositivi virtuali). I dispositivi possono contenere una o più entità. |
MidiDeviceList |
Lo spazio dei nomi CoreMidi fornisce classi per interagire con il sottosistema MIDI. |
MidiEndpoint |
Gli endpoint rappresentano un'origine o una destinazione singola nel flusso MIDI. |
MidiEntity |
Oggetto MidiObject che rappresenta un componente secondario di un MidiDeviceoggetto . |
MidiException |
Eccezione generata dai metodi Midi. |
MidiNetworkConnection |
Connessione a un host di rete MIDI usando un MidiNetworkSessionoggetto . |
MidiNetworkHost |
Host MIDI remoto. |
MidiNetworkSession |
Classe singleton che gestisce l's MidiNetworkConnectiontra varie entità MIDI. |
MidiObject |
Classe di base per le MidiClientclassi , MidiPort, MidiEntityMidiDevice e MidiEndpoint . |
MidiPacket |
Incapsula una serie di eventi MIDI. |
MidiPacketsEventArgs |
Fornisce dati per gli MessageReceived eventi e . |
MidiPort |
Porte di input e output. |
MidiThruConnection |
Gestisce le connessioni play-through MIDI. |
MidiThruConnectionParams |
Trasformazioni MIDI e routing. |
ObjectAddedOrRemovedEventArgs |
Fornisce i dati per gli ObjectRemoved eventi e . |
ObjectPropertyChangedEventArgs |
Fornisce dati per l'evento PropertyChanged. |
Struct
MidiCIDeviceIdentification |
Lo spazio dei nomi CoreMidi fornisce classi per interagire con il sottosistema MIDI. |
MidiControlTransform |
Rappresenta una trasformazione di un controllo MIDI. |
MidiThruConnectionEndpoint |
Origine o Destinazione di un MidiThruConnectionoggetto . |
MidiTransform |
Oggetto che definisce come viene trasformato un evento MIDI. |
MidiValueMap |
Mappa dei valori MIDI. |
Enumerazioni
MidiError |
Errori generati dallo stack CoreMIDI. |
MidiNetworkConnectionPolicy |
Enumerazione i cui valori specificano quali host sono idonei a connettersi a una sessione di rete MIDI. |
MidiTransformControlType |
Tipo di trasformazione del controllo MIDI. |
MidiTransformType |
Tipi di trasformazione MIDI. |
Delegati
MidiCIProfileChangedHandler |
Lo spazio dei nomi CoreMidi fornisce classi per interagire con il sottosistema MIDI. |
MidiCIPropertyChangedHandler |
Lo spazio dei nomi CoreMidi fornisce classi per interagire con il sottosistema MIDI. |
MidiCIPropertyResponseHandler |
Lo spazio dei nomi CoreMidi fornisce classi per interagire con il sottosistema MIDI. |
Commenti
CoreMIDI è un'API che parla con il server MIDI su iOS e OSX, che a sua volta interagisce con i dispositivi MIDI connessi al dispositivo Mac o iOS.
Quando si usa CoreMIDI, si eseguiranno varie classi che gestiscono parti diverse dello stack MIDI, l'immagine seguente illustra le relazioni:
Il dispositivo MIDI stesso è rappresentato dalla MidiDevice classe . I dispositivi possono contenere una o più entità (MidiEntity). Ad esempio, un dispositivo MIDI può contenere due generatori di toni MIDI indipendenti. Ogni entità contiene una serie di endpoint che sono origini o destini. Entrambe le origini MIDI e le destinazioni MIDI sono incapsulate dalla MidiEntity classe.
Per iniziare con MIDI, sarà necessario creare un MidiClient oggetto. Questo oggetto è il gateway tra l'applicazione e il processo del server MIDI. Si sottoscrive gli eventi generati da questo oggetto per tenere traccia dei dispositivi aggiunti, rimossi e alle modifiche nelle relative proprietà e configurazione.
È anche possibile usare per MidiClient creare porte di input e porte di output. Le porte di input generano l'evento MessageReceived quando sono disponibili nuovi dati MIDI e è possibile usare la Packets proprietà negli argomenti ricevuti per recuperare i dati
Vedere la MidiClient classe per un esempio di come configurare le cose.
Per usare le connessioni MIDI in rete, è necessario abilitare la sessione di rete e impostare i criteri di connessione, come indicato di seguito:
var session = MidiNetworkSession.DefaultSession;
session.Enabled = true;
session.ConnectionPolicy = MidiNetworkConnectionPolicy.Anyone;
Per connettersi a un host di rete MIDI remoto, usare , MidiNetworkHostcome illustrato di seguito:
var host = MidiNetworkHost.Create ("My Session", "myhost.xamarin.com", 5004);
var connection = MidiNetworkConnection.FromHost (host);