Documentation Archive Developer
Search

CoreMIDI Changes for Swift

CoreMIDI

Removed MIDIDriverInterface.init(_reserved: UnsafeMutablePointer<Void>, QueryInterface: CFunctionPointer<((UnsafeMutablePointer<Void>, REFIID, UnsafeMutablePointer<LPVOID>) -> HRESULT)>, AddRef: CFunctionPointer<((UnsafeMutablePointer<Void>) -> ULONG)>, Release: CFunctionPointer<((UnsafeMutablePointer<Void>) -> ULONG)>, FindDevices: CFunctionPointer<((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)>, Start: CFunctionPointer<((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)>, Stop: CFunctionPointer<((MIDIDriverRef) -> OSStatus)>, Configure: CFunctionPointer<((MIDIDriverRef, MIDIDeviceRef) -> OSStatus)>, Send: CFunctionPointer<((MIDIDriverRef, UnsafePointer<MIDIPacketList>, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)>, EnableSource: CFunctionPointer<((MIDIDriverRef, MIDIEndpointRef, Boolean) -> OSStatus)>, Flush: CFunctionPointer<((MIDIDriverRef, MIDIEndpointRef, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)>, Monitor: CFunctionPointer<((MIDIDriverRef, MIDIEndpointRef, UnsafePointer<MIDIPacketList>) -> OSStatus)>)
Removed MIDIObjectPropertyChangeNotification.init()
Removed MIDIObjectPropertyChangeNotification.init(messageID: MIDINotificationMessageID, messageSize: UInt32, object: MIDIObjectRef, objectType: MIDIObjectType, propertyName: Unmanaged<CFString>!)
Removed MIDISysexSendRequest.init()
Removed MIDISysexSendRequest.init(destination: MIDIEndpointRef, data: UnsafePointer<UInt8>, bytesToSend: UInt32, complete: Boolean, reserved: (UInt8, UInt8, UInt8), completionProc: MIDICompletionProc, completionRefCon: UnsafeMutablePointer<Void>)
Removed kMIDIControlType_14Bit
Removed kMIDIControlType_14BitNRPN
Removed kMIDIControlType_14BitRPN
Removed kMIDIControlType_7Bit
Removed kMIDIControlType_7BitNRPN
Removed kMIDIControlType_7BitRPN
Removed kMIDIMsgIOError
Removed kMIDIMsgObjectAdded
Removed kMIDIMsgObjectRemoved
Removed kMIDIMsgPropertyChanged
Removed kMIDIMsgSerialPortOwnerChanged
Removed kMIDIMsgSetupChanged
Removed kMIDIMsgThruConnectionsChanged
Removed kMIDIObjectType_Destination
Removed kMIDIObjectType_Device
Removed kMIDIObjectType_Entity
Removed kMIDIObjectType_ExternalDestination
Removed kMIDIObjectType_ExternalDevice
Removed kMIDIObjectType_ExternalEntity
Removed kMIDIObjectType_ExternalSource
Removed kMIDIObjectType_Other
Removed kMIDIObjectType_Source
Removed kMIDITransform_Add
Removed kMIDITransform_FilterOut
Removed kMIDITransform_MapControl
Removed kMIDITransform_MapValue
Removed kMIDITransform_MaxValue
Removed kMIDITransform_MinValue
Removed kMIDITransform_None
Removed kMIDITransform_Scale
Removed MIDINetworkConnectionPolicy
Removed MIDINetworkConnectionPolicy_Anyone
Removed MIDINetworkConnectionPolicy_HostsInContactList
Removed MIDINetworkConnectionPolicy_NoOne
Removed MIDINotificationMessageID
Removed MIDIObjectType
Removed MIDITransformControlType
Removed MIDITransformType
Added MIDIDriverInterface.init(_reserved: UnsafeMutablePointer<Void>, QueryInterface: ((UnsafeMutablePointer<Void>, REFIID, UnsafeMutablePointer<LPVOID>) -> HRESULT)!, AddRef: ((UnsafeMutablePointer<Void>) -> ULONG)!, Release: ((UnsafeMutablePointer<Void>) -> ULONG)!, FindDevices: ((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)!, Start: ((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)!, Stop: ((MIDIDriverRef) -> OSStatus)!, Configure: ((MIDIDriverRef, MIDIDeviceRef) -> OSStatus)!, Send: ((MIDIDriverRef, UnsafePointer<MIDIPacketList>, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)!, EnableSource: ((MIDIDriverRef, MIDIEndpointRef, DarwinBoolean) -> OSStatus)!, Flush: ((MIDIDriverRef, MIDIEndpointRef, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)!, Monitor: ((MIDIDriverRef, MIDIEndpointRef, UnsafePointer<MIDIPacketList>) -> OSStatus)!)
Modified MIDIControlTransform.init(controlType: MIDITransformControlType, remappedControlType: MIDITransformControlType, controlNumber: UInt16, transform: MIDITransformType, param: Int16)
Introduction
FromiOS 8.3
ToiOS 9.0

Declaration
From
struct MIDIDriverInterface {
    var _reserved: UnsafeMutablePointer<Void>
    var QueryInterface: CFunctionPointer<((UnsafeMutablePointer<Void>, REFIID, UnsafeMutablePointer<LPVOID>) -> HRESULT)>
    var AddRef: CFunctionPointer<((UnsafeMutablePointer<Void>) -> ULONG)>
    var Release: CFunctionPointer<((UnsafeMutablePointer<Void>) -> ULONG)>
    var FindDevices: CFunctionPointer<((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)>
    var Start: CFunctionPointer<((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)>
    var Stop: CFunctionPointer<((MIDIDriverRef) -> OSStatus)>
    var Configure: CFunctionPointer<((MIDIDriverRef, MIDIDeviceRef) -> OSStatus)>
    var Send: CFunctionPointer<((MIDIDriverRef, UnsafePointer<MIDIPacketList>, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)>
    var EnableSource: CFunctionPointer<((MIDIDriverRef, MIDIEndpointRef, Boolean) -> OSStatus)>
    var Flush: CFunctionPointer<((MIDIDriverRef, MIDIEndpointRef, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)>
    var Monitor: CFunctionPointer<((MIDIDriverRef, MIDIEndpointRef, UnsafePointer<MIDIPacketList>) -> OSStatus)>
    init()
    init(_reserved _reserved: UnsafeMutablePointer<Void>, QueryInterface QueryInterface: CFunctionPointer<((UnsafeMutablePointer<Void>, REFIID, UnsafeMutablePointer<LPVOID>) -> HRESULT)>, AddRef AddRef: CFunctionPointer<((UnsafeMutablePointer<Void>) -> ULONG)>, Release Release: CFunctionPointer<((UnsafeMutablePointer<Void>) -> ULONG)>, FindDevices FindDevices: CFunctionPointer<((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)>, Start Start: CFunctionPointer<((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)>, Stop Stop: CFunctionPointer<((MIDIDriverRef) -> OSStatus)>, Configure Configure: CFunctionPointer<((MIDIDriverRef, MIDIDeviceRef) -> OSStatus)>, Send Send: CFunctionPointer<((MIDIDriverRef, UnsafePointer<MIDIPacketList>, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)>, EnableSource EnableSource: CFunctionPointer<((MIDIDriverRef, MIDIEndpointRef, Boolean) -> OSStatus)>, Flush Flush: CFunctionPointer<((MIDIDriverRef, MIDIEndpointRef, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)>, Monitor Monitor: CFunctionPointer<((MIDIDriverRef, MIDIEndpointRef, UnsafePointer<MIDIPacketList>) -> OSStatus)>)
}
To
struct MIDIDriverInterface {
    var _reserved: UnsafeMutablePointer<Void>
    var QueryInterface: ((UnsafeMutablePointer<Void>, REFIID, UnsafeMutablePointer<LPVOID>) -> HRESULT)!
    var AddRef: ((UnsafeMutablePointer<Void>) -> ULONG)!
    var Release: ((UnsafeMutablePointer<Void>) -> ULONG)!
    var FindDevices: ((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)!
    var Start: ((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)!
    var Stop: ((MIDIDriverRef) -> OSStatus)!
    var Configure: ((MIDIDriverRef, MIDIDeviceRef) -> OSStatus)!
    var Send: ((MIDIDriverRef, UnsafePointer<MIDIPacketList>, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)!
    var EnableSource: ((MIDIDriverRef, MIDIEndpointRef, DarwinBoolean) -> OSStatus)!
    var Flush: ((MIDIDriverRef, MIDIEndpointRef, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)!
    var Monitor: ((MIDIDriverRef, MIDIEndpointRef, UnsafePointer<MIDIPacketList>) -> OSStatus)!
    init()
    init(_reserved _reserved: UnsafeMutablePointer<Void>, QueryInterface QueryInterface: ((UnsafeMutablePointer<Void>, REFIID, UnsafeMutablePointer<LPVOID>) -> HRESULT)!, AddRef AddRef: ((UnsafeMutablePointer<Void>) -> ULONG)!, Release Release: ((UnsafeMutablePointer<Void>) -> ULONG)!, FindDevices FindDevices: ((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)!, Start Start: ((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)!, Stop Stop: ((MIDIDriverRef) -> OSStatus)!, Configure Configure: ((MIDIDriverRef, MIDIDeviceRef) -> OSStatus)!, Send Send: ((MIDIDriverRef, UnsafePointer<MIDIPacketList>, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)!, EnableSource EnableSource: ((MIDIDriverRef, MIDIEndpointRef, DarwinBoolean) -> OSStatus)!, Flush Flush: ((MIDIDriverRef, MIDIEndpointRef, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)!, Monitor Monitor: ((MIDIDriverRef, MIDIEndpointRef, UnsafePointer<MIDIPacketList>) -> OSStatus)!)
}

Declaration
From
var AddRef: CFunctionPointer<((UnsafeMutablePointer<Void>) -> ULONG)>
To
var AddRef: ((UnsafeMutablePointer<Void>) -> ULONG)!

Declaration
From
var Configure: CFunctionPointer<((MIDIDriverRef, MIDIDeviceRef) -> OSStatus)>
To
var Configure: ((MIDIDriverRef, MIDIDeviceRef) -> OSStatus)!

Declaration
From
var EnableSource: CFunctionPointer<((MIDIDriverRef, MIDIEndpointRef, Boolean) -> OSStatus)>
To
var EnableSource: ((MIDIDriverRef, MIDIEndpointRef, DarwinBoolean) -> OSStatus)!

Declaration
From
var FindDevices: CFunctionPointer<((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)>
To
var FindDevices: ((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)!

Declaration
From
var Flush: CFunctionPointer<((MIDIDriverRef, MIDIEndpointRef, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)>
To
var Flush: ((MIDIDriverRef, MIDIEndpointRef, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)!

Declaration
From
var Monitor: CFunctionPointer<((MIDIDriverRef, MIDIEndpointRef, UnsafePointer<MIDIPacketList>) -> OSStatus)>
To
var Monitor: ((MIDIDriverRef, MIDIEndpointRef, UnsafePointer<MIDIPacketList>) -> OSStatus)!

Declaration
From
var QueryInterface: CFunctionPointer<((UnsafeMutablePointer<Void>, REFIID, UnsafeMutablePointer<LPVOID>) -> HRESULT)>
To
var QueryInterface: ((UnsafeMutablePointer<Void>, REFIID, UnsafeMutablePointer<LPVOID>) -> HRESULT)!

Declaration
From
var Release: CFunctionPointer<((UnsafeMutablePointer<Void>) -> ULONG)>
To
var Release: ((UnsafeMutablePointer<Void>) -> ULONG)!

Declaration
From
var Send: CFunctionPointer<((MIDIDriverRef, UnsafePointer<MIDIPacketList>, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)>
To
var Send: ((MIDIDriverRef, UnsafePointer<MIDIPacketList>, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> OSStatus)!

Declaration
From
var Start: CFunctionPointer<((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)>
To
var Start: ((MIDIDriverRef, MIDIDeviceListRef) -> OSStatus)!

Declaration
From
var Stop: CFunctionPointer<((MIDIDriverRef) -> OSStatus)>
To
var Stop: ((MIDIDriverRef) -> OSStatus)!

Modified MIDIIOErrorNotification.init(messageID: MIDINotificationMessageID, messageSize: UInt32, driverDevice: MIDIDeviceRef, errorCode: OSStatus)
Introduction
FromiOS 8.3
ToiOS 9.0

Declaration
From
class MIDINetworkConnection : NSObject {
    class func connectionWithHost(_ host: MIDINetworkHost!) -> AnyObject!
    var host: MIDINetworkHost! { get }
}
To
class MIDINetworkConnection : NSObject {
    convenience init(host host: MIDINetworkHost)
    class func connectionWithHost(_ host: MIDINetworkHost) -> Self
    var host: MIDINetworkHost { get }
}

Declaration
From
var host: MIDINetworkHost! { get }
To
var host: MIDINetworkHost { get }

NameDeclarationIntroduction
FromconnectionWithHost(_:)
class func connectionWithHost(_ host: MIDINetworkHost!) -> AnyObject!
iOS 8.0
Toinit(host:)
convenience init(host host: MIDINetworkHost)
iOS 9.0

Declaration
From
class MIDINetworkHost : NSObject {
    class func hostWithName(_ name: String!, address address: String!, port port: Int) -> AnyObject!
    class func hostWithName(_ name: String!, netService netService: NSNetService!) -> AnyObject!
    class func hostWithName(_ name: String!, netServiceName netServiceName: String!, netServiceDomain netServiceDomain: String!) -> AnyObject!
    func hasSameAddressAs(_ other: MIDINetworkHost!) -> Bool
    var name: String! { get }
    var address: String! { get }
    var port: Int { get }
    var netServiceName: String! { get }
    var netServiceDomain: String! { get }
}
To
class MIDINetworkHost : NSObject {
    convenience init(name name: String, address address: String, port port: Int)
    class func hostWithName(_ name: String, address address: String, port port: Int) -> Self
    convenience init(name name: String, netService netService: NSNetService)
    class func hostWithName(_ name: String, netService netService: NSNetService) -> Self
    convenience init(name name: String, netServiceName netServiceName: String, netServiceDomain netServiceDomain: String)
    class func hostWithName(_ name: String, netServiceName netServiceName: String, netServiceDomain netServiceDomain: String) -> Self
    func hasSameAddressAs(_ other: MIDINetworkHost) -> Bool
    var name: String { get }
    var address: String { get }
    var port: Int { get }
    var netServiceName: String? { get }
    var netServiceDomain: String? { get }
}

Declaration
From
var address: String! { get }
To
var address: String { get }

Declaration
From
func hasSameAddressAs(_ other: MIDINetworkHost!) -> Bool
To
func hasSameAddressAs(_ other: MIDINetworkHost) -> Bool

NameDeclarationIntroduction
FromhostWithName(_:address:port:)
class func hostWithName(_ name: String!, address address: String!, port port: Int) -> AnyObject!
iOS 8.0
Toinit(name:address:port:)
convenience init(name name: String, address address: String, port port: Int)
iOS 9.0

NameDeclarationIntroduction
FromhostWithName(_:netService:)
class func hostWithName(_ name: String!, netService netService: NSNetService!) -> AnyObject!
iOS 8.0
Toinit(name:netService:)
convenience init(name name: String, netService netService: NSNetService)
iOS 9.0

NameDeclarationIntroduction
FromhostWithName(_:netServiceName:netServiceDomain:)
class func hostWithName(_ name: String!, netServiceName netServiceName: String!, netServiceDomain netServiceDomain: String!) -> AnyObject!
iOS 8.0
Toinit(name:netServiceName:netServiceDomain:)
convenience init(name name: String, netServiceName netServiceName: String, netServiceDomain netServiceDomain: String)
iOS 9.0

Declaration
From
var name: String! { get }
To
var name: String { get }

Declaration
From
var netServiceDomain: String! { get }
To
var netServiceDomain: String? { get }

Declaration
From
var netServiceName: String! { get }
To
var netServiceName: String? { get }

Declaration
From
class MIDINetworkSession : NSObject {
    class func defaultSession() -> MIDINetworkSession!
    var enabled: Bool
    var networkPort: Int { get }
    var networkName: String! { get }
    var localName: String! { get }
    var connectionPolicy: MIDINetworkConnectionPolicy
    func contacts() -> Set<NSObject>!
    func addContact(_ contact: MIDINetworkHost!) -> Bool
    func removeContact(_ contact: MIDINetworkHost!) -> Bool
    func connections() -> Set<NSObject>!
    func addConnection(_ connection: MIDINetworkConnection!) -> Bool
    func removeConnection(_ connection: MIDINetworkConnection!) -> Bool
    func sourceEndpoint() -> MIDIEndpointRef
    func destinationEndpoint() -> MIDIEndpointRef
}
To
class MIDINetworkSession : NSObject {
    class func defaultSession() -> MIDINetworkSession
    var enabled: Bool
    var networkPort: Int { get }
    var networkName: String { get }
    var localName: String { get }
    var connectionPolicy: MIDINetworkConnectionPolicy
    func contacts() -> Set<MIDINetworkHost>
    func addContact(_ contact: MIDINetworkHost) -> Bool
    func removeContact(_ contact: MIDINetworkHost) -> Bool
    func connections() -> Set<MIDINetworkConnection>
    func addConnection(_ connection: MIDINetworkConnection) -> Bool
    func removeConnection(_ connection: MIDINetworkConnection) -> Bool
    func sourceEndpoint() -> MIDIEndpointRef
    func destinationEndpoint() -> MIDIEndpointRef
}

Declaration
From
func addConnection(_ connection: MIDINetworkConnection!) -> Bool
To
func addConnection(_ connection: MIDINetworkConnection) -> Bool

Declaration
From
func addContact(_ contact: MIDINetworkHost!) -> Bool
To
func addContact(_ contact: MIDINetworkHost) -> Bool

Declaration
From
func connections() -> Set<NSObject>!
To
func connections() -> Set<MIDINetworkConnection>

Declaration
From
func contacts() -> Set<NSObject>!
To
func contacts() -> Set<MIDINetworkHost>

Declaration
From
class func defaultSession() -> MIDINetworkSession!
To
class func defaultSession() -> MIDINetworkSession

Declaration
From
var localName: String! { get }
To
var localName: String { get }

Declaration
From
var networkName: String! { get }
To
var networkName: String { get }

Declaration
From
func removeConnection(_ connection: MIDINetworkConnection!) -> Bool
To
func removeConnection(_ connection: MIDINetworkConnection) -> Bool

Declaration
From
func removeContact(_ contact: MIDINetworkHost!) -> Bool
To
func removeContact(_ contact: MIDINetworkHost) -> Bool

Modified MIDINotification.init(messageID: MIDINotificationMessageID, messageSize: UInt32)
Introduction
FromiOS 8.3
ToiOS 9.0

Modified MIDIObjectAddRemoveNotification.init(messageID: MIDINotificationMessageID, messageSize: UInt32, parent: MIDIObjectRef, parentType: MIDIObjectType, child: MIDIObjectRef, childType: MIDIObjectType)
Introduction
FromiOS 8.3
ToiOS 9.0

Declaration
From
struct MIDIObjectPropertyChangeNotification {
    var messageID: MIDINotificationMessageID
    var messageSize: UInt32
    var object: MIDIObjectRef
    var objectType: MIDIObjectType
    var propertyName: Unmanaged<CFString>!
    init()
    init(messageID messageID: MIDINotificationMessageID, messageSize messageSize: UInt32, object object: MIDIObjectRef, objectType objectType: MIDIObjectType, propertyName propertyName: Unmanaged<CFString>!)
}
To
struct MIDIObjectPropertyChangeNotification {
    var messageID: MIDINotificationMessageID
    var messageSize: UInt32
    var object: MIDIObjectRef
    var objectType: MIDIObjectType
    var propertyName: Unmanaged<CFString>
}

Declaration
From
var propertyName: Unmanaged<CFString>!
To
var propertyName: Unmanaged<CFString>

Declaration
From
struct MIDISysexSendRequest {
    var destination: MIDIEndpointRef
    var data: UnsafePointer<UInt8>
    var bytesToSend: UInt32
    var complete: Boolean
    var reserved: (UInt8, UInt8, UInt8)
    var completionProc: MIDICompletionProc
    var completionRefCon: UnsafeMutablePointer<Void>
    init()
    init(destination destination: MIDIEndpointRef, data data: UnsafePointer<UInt8>, bytesToSend bytesToSend: UInt32, complete complete: Boolean, reserved reserved: (UInt8, UInt8, UInt8), completionProc completionProc: MIDICompletionProc, completionRefCon completionRefCon: UnsafeMutablePointer<Void>)
}
To
struct MIDISysexSendRequest {
    var destination: MIDIEndpointRef
    var data: UnsafePointer<UInt8>
    var bytesToSend: UInt32
    var complete: DarwinBoolean
    var reserved: (UInt8, UInt8, UInt8)
    var completionProc: MIDICompletionProc
    var completionRefCon: UnsafeMutablePointer<Void>
}

Declaration
From
var complete: Boolean
To
var complete: DarwinBoolean

Modified MIDIThruConnectionEndpoint.init(endpointRef: MIDIEndpointRef, uniqueID: MIDIUniqueID)
Introduction
FromiOS 8.3
ToiOS 9.0

Modified MIDITransform.init(transform: MIDITransformType, param: Int16)
Introduction
FromiOS 8.3
ToiOS 9.0

Declaration
From
var kMIDIIDNotUnique: Int { get }
To
var kMIDIIDNotUnique: OSStatus { get }

Declaration
From
var kMIDIInvalidClient: Int { get }
To
var kMIDIInvalidClient: OSStatus { get }

Declaration
From
var kMIDIInvalidPort: Int { get }
To
var kMIDIInvalidPort: OSStatus { get }

Declaration
From
var kMIDIInvalidUniqueID: Int { get }
To
var kMIDIInvalidUniqueID: MIDIUniqueID { get }

Declaration
From
var kMIDIMessageSendErr: Int { get }
To
var kMIDIMessageSendErr: OSStatus { get }

Declaration
From
var kMIDINoConnection: Int { get }
To
var kMIDINoConnection: OSStatus { get }

Declaration
From
var kMIDINoCurrentSetup: Int { get }
To
var kMIDINoCurrentSetup: OSStatus { get }

Declaration
From
var kMIDINotPermitted: Int { get }
To
var kMIDINotPermitted: OSStatus { get }

Declaration
From
var kMIDIObjectNotFound: Int { get }
To
var kMIDIObjectNotFound: OSStatus { get }

DeclarationIntroduction
From
var kMIDIObjectType_ExternalMask: Int { get }
iOS 8.0
To
let kMIDIObjectType_ExternalMask: MIDIObjectType
iOS 9.0

Declaration
From
let kMIDIPropertyAdvanceScheduleTimeMuSec: CFString!
To
let kMIDIPropertyAdvanceScheduleTimeMuSec: CFString

Declaration
From
let kMIDIPropertyCanRoute: CFString!
To
let kMIDIPropertyCanRoute: CFString

Declaration
From
let kMIDIPropertyConnectionUniqueID: CFString!
To
let kMIDIPropertyConnectionUniqueID: CFString

Declaration
From
let kMIDIPropertyDeviceID: CFString!
To
let kMIDIPropertyDeviceID: CFString

Declaration
From
let kMIDIPropertyDisplayName: CFString!
To
let kMIDIPropertyDisplayName: CFString

Declaration
From
let kMIDIPropertyDriverDeviceEditorApp: CFString!
To
let kMIDIPropertyDriverDeviceEditorApp: CFString

Declaration
From
let kMIDIPropertyDriverOwner: CFString!
To
let kMIDIPropertyDriverOwner: CFString

Declaration
From
let kMIDIPropertyDriverVersion: CFString!
To
let kMIDIPropertyDriverVersion: CFString

Declaration
From
let kMIDIPropertyImage: CFString!
To
let kMIDIPropertyImage: CFString

Declaration
From
let kMIDIPropertyIsBroadcast: CFString!
To
let kMIDIPropertyIsBroadcast: CFString

Declaration
From
let kMIDIPropertyIsDrumMachine: CFString!
To
let kMIDIPropertyIsDrumMachine: CFString

Declaration
From
let kMIDIPropertyIsEffectUnit: CFString!
To
let kMIDIPropertyIsEffectUnit: CFString

Declaration
From
let kMIDIPropertyIsEmbeddedEntity: CFString!
To
let kMIDIPropertyIsEmbeddedEntity: CFString

Declaration
From
let kMIDIPropertyIsMixer: CFString!
To
let kMIDIPropertyIsMixer: CFString

Declaration
From
let kMIDIPropertyIsSampler: CFString!
To
let kMIDIPropertyIsSampler: CFString

Declaration
From
let kMIDIPropertyManufacturer: CFString!
To
let kMIDIPropertyManufacturer: CFString

Declaration
From
let kMIDIPropertyMaxReceiveChannels: CFString!
To
let kMIDIPropertyMaxReceiveChannels: CFString

Declaration
From
let kMIDIPropertyMaxSysExSpeed: CFString!
To
let kMIDIPropertyMaxSysExSpeed: CFString

Declaration
From
let kMIDIPropertyMaxTransmitChannels: CFString!
To
let kMIDIPropertyMaxTransmitChannels: CFString

Declaration
From
let kMIDIPropertyModel: CFString!
To
let kMIDIPropertyModel: CFString

Declaration
From
let kMIDIPropertyName: CFString!
To
let kMIDIPropertyName: CFString

Declaration
From
let kMIDIPropertyNameConfiguration: CFString!
To
let kMIDIPropertyNameConfiguration: CFString

Declaration
From
let kMIDIPropertyOffline: CFString!
To
let kMIDIPropertyOffline: CFString

Declaration
From
let kMIDIPropertyPanDisruptsStereo: CFString!
To
let kMIDIPropertyPanDisruptsStereo: CFString

Declaration
From
let kMIDIPropertyPrivate: CFString!
To
let kMIDIPropertyPrivate: CFString

Declaration
From
let kMIDIPropertyReceiveChannels: CFString!
To
let kMIDIPropertyReceiveChannels: CFString

Declaration
From
let kMIDIPropertyReceivesBankSelectLSB: CFString!
To
let kMIDIPropertyReceivesBankSelectLSB: CFString

Declaration
From
let kMIDIPropertyReceivesBankSelectMSB: CFString!
To
let kMIDIPropertyReceivesBankSelectMSB: CFString

Declaration
From
let kMIDIPropertyReceivesClock: CFString!
To
let kMIDIPropertyReceivesClock: CFString

Declaration
From
let kMIDIPropertyReceivesMTC: CFString!
To
let kMIDIPropertyReceivesMTC: CFString

Declaration
From
let kMIDIPropertyReceivesNotes: CFString!
To
let kMIDIPropertyReceivesNotes: CFString

Declaration
From
let kMIDIPropertyReceivesProgramChanges: CFString!
To
let kMIDIPropertyReceivesProgramChanges: CFString

Declaration
From
let kMIDIPropertySingleRealtimeEntity: CFString!
To
let kMIDIPropertySingleRealtimeEntity: CFString

Declaration
From
let kMIDIPropertySupportsGeneralMIDI: CFString!
To
let kMIDIPropertySupportsGeneralMIDI: CFString

Declaration
From
let kMIDIPropertySupportsMMC: CFString!
To
let kMIDIPropertySupportsMMC: CFString

Declaration
From
let kMIDIPropertySupportsShowControl: CFString!
To
let kMIDIPropertySupportsShowControl: CFString

Declaration
From
let kMIDIPropertyTransmitChannels: CFString!
To
let kMIDIPropertyTransmitChannels: CFString

Declaration
From
let kMIDIPropertyTransmitsBankSelectLSB: CFString!
To
let kMIDIPropertyTransmitsBankSelectLSB: CFString

Declaration
From
let kMIDIPropertyTransmitsBankSelectMSB: CFString!
To
let kMIDIPropertyTransmitsBankSelectMSB: CFString

Declaration
From
let kMIDIPropertyTransmitsClock: CFString!
To
let kMIDIPropertyTransmitsClock: CFString

Declaration
From
let kMIDIPropertyTransmitsMTC: CFString!
To
let kMIDIPropertyTransmitsMTC: CFString

Declaration
From
let kMIDIPropertyTransmitsNotes: CFString!
To
let kMIDIPropertyTransmitsNotes: CFString

Declaration
From
let kMIDIPropertyTransmitsProgramChanges: CFString!
To
let kMIDIPropertyTransmitsProgramChanges: CFString

Declaration
From
let kMIDIPropertyUniqueID: CFString!
To
let kMIDIPropertyUniqueID: CFString

Declaration
From
var kMIDIServerStartErr: Int { get }
To
var kMIDIServerStartErr: OSStatus { get }

Declaration
From
var kMIDISetupFormatErr: Int { get }
To
var kMIDISetupFormatErr: OSStatus { get }

Declaration
From
var kMIDIUnknownEndpoint: Int { get }
To
var kMIDIUnknownEndpoint: OSStatus { get }

Declaration
From
var kMIDIUnknownProperty: Int { get }
To
var kMIDIUnknownProperty: OSStatus { get }

Declaration
From
var kMIDIWrongEndpointType: Int { get }
To
var kMIDIWrongEndpointType: OSStatus { get }

Declaration
From
var kMIDIWrongPropertyType: Int { get }
To
var kMIDIWrongPropertyType: OSStatus { get }

Declaration
From
var kMIDIWrongThread: Int { get }
To
var kMIDIWrongThread: OSStatus { get }

Declaration
From
func MIDIClientCreate(_ name: CFString!, _ notifyProc: MIDINotifyProc, _ notifyRefCon: UnsafeMutablePointer<Void>, _ outClient: UnsafeMutablePointer<MIDIClientRef>) -> OSStatus
To
func MIDIClientCreate(_ name: CFString, _ notifyProc: MIDINotifyProc?, _ notifyRefCon: UnsafeMutablePointer<Void>, _ outClient: UnsafeMutablePointer<MIDIClientRef>) -> OSStatus

Modified MIDIClientRef
Declaration
From
typealias MIDIClientRef = COpaquePointer
To
typealias MIDIClientRef = MIDIObjectRef

Declaration
From
typealias MIDICompletionProc = CFunctionPointer<((UnsafeMutablePointer<MIDISysexSendRequest>) -> Void)>
To
typealias MIDICompletionProc = (UnsafeMutablePointer<MIDISysexSendRequest>) -> Void

Declaration
From
func MIDIDestinationCreate(_ client: MIDIClientRef, _ name: CFString!, _ readProc: MIDIReadProc, _ refCon: UnsafeMutablePointer<Void>, _ outDest: UnsafeMutablePointer<MIDIEndpointRef>) -> OSStatus
To
func MIDIDestinationCreate(_ client: MIDIClientRef, _ name: CFString, _ readProc: MIDIReadProc, _ refCon: UnsafeMutablePointer<Void>, _ outDest: UnsafeMutablePointer<MIDIEndpointRef>) -> OSStatus

Declaration
From
func MIDIDeviceAddEntity(_ device: MIDIDeviceRef, _ name: CFString!, _ embedded: Boolean, _ numSourceEndpoints: Int, _ numDestinationEndpoints: Int, _ newEntity: UnsafeMutablePointer<MIDIEntityRef>) -> OSStatus
To
func MIDIDeviceAddEntity(_ device: MIDIDeviceRef, _ name: CFString, _ embedded: Bool, _ numSourceEndpoints: Int, _ numDestinationEndpoints: Int, _ newEntity: UnsafeMutablePointer<MIDIEntityRef>) -> OSStatus

Declaration
From
typealias MIDIDeviceListRef = COpaquePointer
To
typealias MIDIDeviceListRef = MIDIObjectRef

Modified MIDIDeviceRef
Declaration
From
typealias MIDIDeviceRef = COpaquePointer
To
typealias MIDIDeviceRef = MIDIObjectRef

Declaration
From
typealias MIDIEndpointRef = COpaquePointer
To
typealias MIDIEndpointRef = MIDIObjectRef

Modified MIDIEntityRef
Declaration
From
typealias MIDIEntityRef = COpaquePointer
To
typealias MIDIEntityRef = MIDIObjectRef

Declaration
From
func MIDIExternalDeviceCreate(_ name: CFString!, _ manufacturer: CFString!, _ model: CFString!, _ outDevice: UnsafeMutablePointer<MIDIDeviceRef>) -> OSStatus
To
func MIDIExternalDeviceCreate(_ name: CFString, _ manufacturer: CFString, _ model: CFString, _ outDevice: UnsafeMutablePointer<MIDIDeviceRef>) -> OSStatus

Declaration
From
func MIDIInputPortCreate(_ client: MIDIClientRef, _ portName: CFString!, _ readProc: MIDIReadProc, _ refCon: UnsafeMutablePointer<Void>, _ outPort: UnsafeMutablePointer<MIDIPortRef>) -> OSStatus
To
func MIDIInputPortCreate(_ client: MIDIClientRef, _ portName: CFString, _ readProc: MIDIReadProc, _ refCon: UnsafeMutablePointer<Void>, _ outPort: UnsafeMutablePointer<MIDIPortRef>) -> OSStatus

Declaration
From
typealias MIDINotifyProc = CFunctionPointer<((UnsafePointer<MIDINotification>, UnsafeMutablePointer<Void>) -> Void)>
To
typealias MIDINotifyProc = (UnsafePointer<MIDINotification>, UnsafeMutablePointer<Void>) -> Void

Declaration
From
func MIDIObjectGetDataProperty(_ obj: MIDIObjectRef, _ propertyID: CFString!, _ outData: UnsafeMutablePointer<Unmanaged<CFData>?>) -> OSStatus
To
func MIDIObjectGetDataProperty(_ obj: MIDIObjectRef, _ propertyID: CFString, _ outData: UnsafeMutablePointer<Unmanaged<CFData>?>) -> OSStatus

Declaration
From
func MIDIObjectGetDictionaryProperty(_ obj: MIDIObjectRef, _ propertyID: CFString!, _ outDict: UnsafeMutablePointer<Unmanaged<CFDictionary>?>) -> OSStatus
To
func MIDIObjectGetDictionaryProperty(_ obj: MIDIObjectRef, _ propertyID: CFString, _ outDict: UnsafeMutablePointer<Unmanaged<CFDictionary>?>) -> OSStatus

Declaration
From
func MIDIObjectGetIntegerProperty(_ obj: MIDIObjectRef, _ propertyID: CFString!, _ outValue: UnsafeMutablePointer<Int32>) -> OSStatus
To
func MIDIObjectGetIntegerProperty(_ obj: MIDIObjectRef, _ propertyID: CFString, _ outValue: UnsafeMutablePointer<Int32>) -> OSStatus

Declaration
From
func MIDIObjectGetProperties(_ obj: MIDIObjectRef, _ outProperties: UnsafeMutablePointer<Unmanaged<CFPropertyList>?>, _ deep: Boolean) -> OSStatus
To
func MIDIObjectGetProperties(_ obj: MIDIObjectRef, _ outProperties: UnsafeMutablePointer<Unmanaged<CFPropertyList>?>, _ deep: Bool) -> OSStatus

Declaration
From
func MIDIObjectGetStringProperty(_ obj: MIDIObjectRef, _ propertyID: CFString!, _ str: UnsafeMutablePointer<Unmanaged<CFString>?>) -> OSStatus
To
func MIDIObjectGetStringProperty(_ obj: MIDIObjectRef, _ propertyID: CFString, _ str: UnsafeMutablePointer<Unmanaged<CFString>?>) -> OSStatus

Modified MIDIObjectRef
Declaration
From
typealias MIDIObjectRef = UnsafeMutablePointer<Void>
To
typealias MIDIObjectRef = UInt32

Declaration
From
func MIDIObjectRemoveProperty(_ obj: MIDIObjectRef, _ propertyID: CFString!) -> OSStatus
To
func MIDIObjectRemoveProperty(_ obj: MIDIObjectRef, _ propertyID: CFString) -> OSStatus

Declaration
From
func MIDIObjectSetDataProperty(_ obj: MIDIObjectRef, _ propertyID: CFString!, _ data: CFData!) -> OSStatus
To
func MIDIObjectSetDataProperty(_ obj: MIDIObjectRef, _ propertyID: CFString, _ data: CFData) -> OSStatus

Declaration
From
func MIDIObjectSetDictionaryProperty(_ obj: MIDIObjectRef, _ propertyID: CFString!, _ data: CFDictionary!) -> OSStatus
To
func MIDIObjectSetDictionaryProperty(_ obj: MIDIObjectRef, _ propertyID: CFString, _ dict: CFDictionary) -> OSStatus

Declaration
From
func MIDIObjectSetIntegerProperty(_ obj: MIDIObjectRef, _ propertyID: CFString!, _ value: Int32) -> OSStatus
To
func MIDIObjectSetIntegerProperty(_ obj: MIDIObjectRef, _ propertyID: CFString, _ value: Int32) -> OSStatus

Declaration
From
func MIDIObjectSetStringProperty(_ obj: MIDIObjectRef, _ propertyID: CFString!, _ str: CFString!) -> OSStatus
To
func MIDIObjectSetStringProperty(_ obj: MIDIObjectRef, _ propertyID: CFString, _ str: CFString) -> OSStatus

Declaration
From
func MIDIOutputPortCreate(_ client: MIDIClientRef, _ portName: CFString!, _ outPort: UnsafeMutablePointer<MIDIPortRef>) -> OSStatus
To
func MIDIOutputPortCreate(_ client: MIDIClientRef, _ portName: CFString, _ outPort: UnsafeMutablePointer<MIDIPortRef>) -> OSStatus

Modified MIDIPortRef
Declaration
From
typealias MIDIPortRef = COpaquePointer
To
typealias MIDIPortRef = MIDIObjectRef

Modified MIDIReadProc
Declaration
From
typealias MIDIReadProc = CFunctionPointer<((UnsafePointer<MIDIPacketList>, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> Void)>
To
typealias MIDIReadProc = (UnsafePointer<MIDIPacketList>, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Void>) -> Void

Modified MIDISetupRef
Declaration
From
typealias MIDISetupRef = COpaquePointer
To
typealias MIDISetupRef = MIDIObjectRef

Declaration
From
func MIDISourceCreate(_ client: MIDIClientRef, _ name: CFString!, _ outSrc: UnsafeMutablePointer<MIDIEndpointRef>) -> OSStatus
To
func MIDISourceCreate(_ client: MIDIClientRef, _ name: CFString, _ outSrc: UnsafeMutablePointer<MIDIEndpointRef>) -> OSStatus

Declaration
From
func MIDIThruConnectionCreate(_ inPersistentOwnerID: CFString!, _ inConnectionParams: CFData!, _ outConnection: UnsafeMutablePointer<MIDIThruConnectionRef>) -> OSStatus
To
func MIDIThruConnectionCreate(_ inPersistentOwnerID: CFString?, _ inConnectionParams: CFData, _ outConnection: UnsafeMutablePointer<MIDIThruConnectionRef>) -> OSStatus

Declaration
From
func MIDIThruConnectionFind(_ inPersistentOwnerID: CFString!, _ outConnectionList: UnsafeMutablePointer<Unmanaged<CFData>?>) -> OSStatus
To
func MIDIThruConnectionFind(_ inPersistentOwnerID: CFString, _ outConnectionList: UnsafeMutablePointer<Unmanaged<CFData>?>) -> OSStatus

Declaration
From
typealias MIDIThruConnectionRef = COpaquePointer
To
typealias MIDIThruConnectionRef = MIDIObjectRef

Declaration
From
func MIDIThruConnectionSetParams(_ connection: MIDIThruConnectionRef, _ inConnectionParams: CFData!) -> OSStatus
To
func MIDIThruConnectionSetParams(_ connection: MIDIThruConnectionRef, _ inConnectionParams: CFData) -> OSStatus