MidiClient 类

定义

在 MacOS X 和 iOS 中使用 MIDI 的主要入口点。

public class MidiClient : CoreMidi.MidiObject
type MidiClient = class
    inherit MidiObject
继承
MidiClient

注解

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、、ObjectAddedObjectRemovedPropertyChangedSerialPortOwnerChangedSetupChangedThruConnectionsChanged

构造函数

MidiClient(String)

创建新的 MidiClient。

属性

Handle

处理指向非托管对象表示形式的 (指针) 。

(继承自 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

添加或删除持久连接时引发的事件。

适用于

另请参阅