MidiClient 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
在 MacOS X 和 iOS 中使用 MIDI 的主要進入點。
public class MidiClient : CoreMidi.MidiObject
type MidiClient = class
inherit MidiObject
- 繼承
備註
MidiClient 類別是閘道,可與 MacOS 和 iOS 上的 MIDI 子系統通訊。
您通常會使用可識別此特定用戶端的名稱來建立 MidiClient 的實例、連線到公開至此類別的各種事件,以及使用 CreateInputPort(String)CreateOutputPort(String) 方法建立輸入和輸出 midi 埠。
client = new MidiClient ("CoreMidiSample MIDI CLient");
client.ObjectAdded += delegate(object sender, ObjectAddedOrRemovedEventArgs e) {
Console.WriteLine ("Object {0} added to {1}", e.Child, e.Parent);
};
client.ObjectRemoved += delegate(object sender, ObjectAddedOrRemovedEventArgs e) {
Console.WriteLine ("Object {0} removed to {1}", e.Child, e.Parent);
};
client.PropertyChanged += delegate(object sender, ObjectPropertyChangedEventArgs e) {
Console.WriteLine ("Property {0} changed on {1}", e.PropertyName, e.MidiObject);
};
client.ThruConnectionsChanged += delegate {
Console.WriteLine ("Thru connections changed");
};
client.SerialPortOwnerChanged += delegate {
Console.WriteLine ("Serial port changed");
};
//
// Create your input and output ports
//
outputPort = client.CreateOutputPort ("CoreMidiSample Output Port");
inputPort = client.CreateInputPort ("CoreMidiSample Input Port");
// Print out packets when we receive them
inputPort.MessageReceived += delegate(object sender, MidiPacketsEventArgs e) {
Console.WriteLine ("Got {0} packets", e.Packets.Length);
};
MidiClient 實例上將會引發下列事件: IOError 、、 ObjectAddedObjectRemoved 、 PropertyChanged 、 SerialPortOwnerChanged 、 SetupChanged 和 ThruConnectionsChanged
建構函式
MidiClient(String) |
建立新的 MidiClient。 |
屬性
Handle |
處理 unmanaged 物件標記法) (指標。 (繼承來源 MidiObject) |
Name |
這個 MidiClient 的名稱。 |
方法
CreateInputPort(String) |
建立新的 MIDI 輸入埠。 |
CreateOutputPort(String) |
建立新的 MIDI 輸出埠。 |
CreateVirtualDestination(String, MidiError) |
在 MacOS X 和 iOS 中使用 MIDI 的主要進入點。 |
CreateVirtualSource(String, MidiError) |
在 MacOS X 和 iOS 中使用 MIDI 的主要進入點。 |
Dispose() |
釋放 MidiObject 物件所使用的資源。 (繼承來源 MidiObject) |
Dispose(Boolean) |
釋放 MidiClient 物件所使用的資源。 |
GetData(IntPtr) |
在 MacOS X 和 iOS 中使用 MIDI 的主要進入點。 (繼承來源 MidiObject) |
GetDictionaryProperties(Boolean) |
傳回物件屬性做為字典。 (繼承來源 MidiObject) |
GetString(IntPtr) |
在 MacOS X 和 iOS 中使用 MIDI 的主要進入點。 (繼承來源 MidiObject) |
RemoveProperty(String) |
在 MacOS X 和 iOS 中使用 MIDI 的主要進入點。 (繼承來源 MidiObject) |
SetData(IntPtr, NSData) |
在 MacOS X 和 iOS 中使用 MIDI 的主要進入點。 (繼承來源 MidiObject) |
SetString(IntPtr, String) |
在 MacOS X 和 iOS 中使用 MIDI 的主要進入點。 (繼承來源 MidiObject) |
ToString() |
在 MacOS X 和 iOS 中使用 MIDI 的主要進入點。 |
事件
IOError |
MIDI 管線發生錯誤時引發的事件。 |
ObjectAdded |
將 MidiDevice、MidiEntity 或 MidiEndpoint 新增至會話時引發的事件。 |
ObjectRemoved |
當 MidiDevice、MidiEntity 或 MidiEndpoint 已移除會話時引發的事件。 |
PropertyChanged |
物件的 屬性已變更。 |
SerialPortOwnerChanged |
在 MacOS X 和 iOS 中使用 MIDI 的主要進入點。 |
SetupChanged |
MIDI 設定已變更。 如果您接聽 ObjectAdded、ObjectRemoved、PropertyChanged、ThruConnectionsChanged 和 SerialPortOwnerChanged 事件,則不需要實作。 |
ThruConnectionsChanged |
新增或移除永續性連線時所引發的事件。 |