#[cfg(feature = "objc2")]
use objc2::__framework_prelude::*;
use crate::*;
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct MIDI2DeviceManufacturer {
pub sysExIDByte: [Byte; 3],
}
#[cfg(feature = "objc2")]
unsafe impl Encode for MIDI2DeviceManufacturer {
const ENCODING: Encoding = Encoding::Struct("?", &[<[Byte; 3]>::ENCODING]);
}
#[cfg(feature = "objc2")]
unsafe impl RefEncode for MIDI2DeviceManufacturer {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct MIDI2DeviceRevisionLevel {
pub revisionLevel: [Byte; 4],
}
#[cfg(feature = "objc2")]
unsafe impl Encode for MIDI2DeviceRevisionLevel {
const ENCODING: Encoding = Encoding::Struct("?", &[<[Byte; 4]>::ENCODING]);
}
#[cfg(feature = "objc2")]
unsafe impl RefEncode for MIDI2DeviceRevisionLevel {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[cfg(feature = "MIDIMessages")]
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct MIDICICategoryOptions(pub MIDIUInteger7);
#[cfg(feature = "MIDIMessages")]
bitflags::bitflags! {
impl MIDICICategoryOptions: MIDIUInteger7 {
#[doc(alias = "kMIDICICategoryOptionsProtocolNegotiation")]
const ProtocolNegotiation = 1<<1;
#[doc(alias = "kMIDICICategoryOptionsProfileConfigurationSupported")]
const ProfileConfigurationSupported = 1<<2;
#[doc(alias = "kMIDICICategoryOptionsPropertyExchangeSupported")]
const PropertyExchangeSupported = 1<<3;
#[doc(alias = "kMIDICICategoryOptionsProcessInquirySupported")]
const ProcessInquirySupported = 1<<4;
}
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl Encode for MIDICICategoryOptions {
const ENCODING: Encoding = MIDIUInteger7::ENCODING;
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl RefEncode for MIDICICategoryOptions {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[cfg(feature = "MIDIMessages")]
pub type MIDIUMPFunctionBlockID = MIDIUInteger7;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct MIDICIDeviceType(pub u8);
impl MIDICIDeviceType {
#[doc(alias = "kMIDICIDeviceTypeUnknown")]
pub const Unknown: Self = Self(0);
#[doc(alias = "kMIDICIDeviceTypeLegacyMIDI1")]
pub const LegacyMIDI1: Self = Self(1);
#[doc(alias = "kMIDICIDeviceTypeVirtual")]
pub const Virtual: Self = Self(2);
#[doc(alias = "kMIDICIDeviceTypeUSBMIDI")]
pub const USBMIDI: Self = Self(3);
}
#[cfg(feature = "objc2")]
unsafe impl Encode for MIDICIDeviceType {
const ENCODING: Encoding = u8::ENCODING;
}
#[cfg(feature = "objc2")]
unsafe impl RefEncode for MIDICIDeviceType {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[cfg(feature = "MIDIMessages")]
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct MIDICIProfileMessageType(pub MIDIUInteger7);
#[cfg(feature = "MIDIMessages")]
impl MIDICIProfileMessageType {
#[doc(alias = "kMIDICIProfileMessageTypeProfileInquiry")]
pub const ProfileInquiry: Self = Self(0x20);
#[doc(alias = "kMIDICIProfileMessageTypeReplyToProfileInquiry")]
pub const ReplyToProfileInquiry: Self = Self(0x21);
#[doc(alias = "kMIDICIProfileMessageTypeSetProfileOn")]
pub const SetProfileOn: Self = Self(0x22);
#[doc(alias = "kMIDICIProfileMessageTypeSetProfileOff")]
pub const SetProfileOff: Self = Self(0x23);
#[doc(alias = "kMIDICIProfileMessageTypeProfileEnabledReport")]
pub const ProfileEnabledReport: Self = Self(0x24);
#[doc(alias = "kMIDICIProfileMessageTypeProfileDisabledReport")]
pub const ProfileDisabledReport: Self = Self(0x25);
#[doc(alias = "kMIDICIProfileMessageTypeProfileAdded")]
pub const ProfileAdded: Self = Self(0x26);
#[doc(alias = "kMIDICIProfileMessageTypeProfileRemoved")]
pub const ProfileRemoved: Self = Self(0x27);
#[doc(alias = "kMIDICIProfileMessageTypeDetailsInquiry")]
pub const DetailsInquiry: Self = Self(0x28);
#[doc(alias = "kMIDICIProfileMessageTypeReplyToDetailsInquiry")]
pub const ReplyToDetailsInquiry: Self = Self(0x29);
#[doc(alias = "kMIDICIProfileMessageTypeProfileSpecificData")]
pub const ProfileSpecificData: Self = Self(0x2F);
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl Encode for MIDICIProfileMessageType {
const ENCODING: Encoding = MIDIUInteger7::ENCODING;
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl RefEncode for MIDICIProfileMessageType {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[cfg(feature = "MIDIMessages")]
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct MIDICIPropertyExchangeMessageType(pub MIDIUInteger7);
#[cfg(feature = "MIDIMessages")]
impl MIDICIPropertyExchangeMessageType {
#[doc(alias = "kMIDICIPropertyExchangeMessageTypeInquiryPropertyExchangeCapabilities")]
pub const InquiryPropertyExchangeCapabilities: Self = Self(0x30);
#[doc(alias = "kMIDICIPropertyExchangeMessageTypeReplyToPropertyExchangeCapabilities")]
pub const ReplyToPropertyExchangeCapabilities: Self = Self(0x31);
#[doc(alias = "kMIDICIPropertyExchangeMessageTypeInquiryHasPropertyData_Reserved")]
pub const InquiryHasPropertyData_Reserved: Self = Self(0x32);
#[doc(alias = "kMIDICIPropertyExchangeMessageTypeInquiryReplyToHasPropertyData_Reserved")]
pub const InquiryReplyToHasPropertyData_Reserved: Self = Self(0x33);
#[doc(alias = "kMIDICIPropertyExchangeMessageTypeInquiryGetPropertyData")]
pub const InquiryGetPropertyData: Self = Self(0x34);
#[doc(alias = "kMIDICIPropertyExchangeMessageTypeReplyToGetProperty")]
pub const ReplyToGetProperty: Self = Self(0x35);
#[doc(alias = "kMIDICIPropertyExchangeMessageTypeInquirySetPropertyData")]
pub const InquirySetPropertyData: Self = Self(0x36);
#[doc(alias = "kMIDICIPropertyExchangeMessageTypeReplyToSetPropertyData")]
pub const ReplyToSetPropertyData: Self = Self(0x37);
#[doc(alias = "kMIDICIPropertyExchangeMessageTypeSubscription")]
pub const Subscription: Self = Self(0x38);
#[doc(alias = "kMIDICIPropertyExchangeMessageTypeReplyToSubscription")]
pub const ReplyToSubscription: Self = Self(0x39);
#[doc(alias = "kMIDICIPropertyExchangeMessageTypeNotify")]
pub const Notify: Self = Self(0x3F);
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl Encode for MIDICIPropertyExchangeMessageType {
const ENCODING: Encoding = MIDIUInteger7::ENCODING;
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl RefEncode for MIDICIPropertyExchangeMessageType {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[cfg(feature = "MIDIMessages")]
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct MIDICIProcessInquiryMessageType(pub MIDIUInteger7);
#[cfg(feature = "MIDIMessages")]
impl MIDICIProcessInquiryMessageType {
#[doc(alias = "kMIDICIProcessInquiryMessageTypeInquiryProcessInquiryCapabilities")]
pub const InquiryProcessInquiryCapabilities: Self = Self(0x40);
#[doc(alias = "kMIDICIProcessInquiryMessageTypeReplyToProcessInquiryCapabilities")]
pub const ReplyToProcessInquiryCapabilities: Self = Self(0x41);
#[doc(alias = "kMIDICIProcessInquiryMessageTypeInquiryMIDIMessageReport")]
pub const InquiryMIDIMessageReport: Self = Self(0x42);
#[doc(alias = "kMIDICIProcessInquiryMessageTypeReplyToMIDIMessageReport")]
pub const ReplyToMIDIMessageReport: Self = Self(0x43);
#[doc(alias = "kMIDICIProcessInquiryMessageTypeEndOfMIDIMessageReport")]
pub const EndOfMIDIMessageReport: Self = Self(0x44);
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl Encode for MIDICIProcessInquiryMessageType {
const ENCODING: Encoding = MIDIUInteger7::ENCODING;
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl RefEncode for MIDICIProcessInquiryMessageType {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[cfg(feature = "MIDIMessages")]
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct MIDICIManagementMessageType(pub MIDIUInteger7);
#[cfg(feature = "MIDIMessages")]
impl MIDICIManagementMessageType {
#[doc(alias = "kMIDICIManagementMessageTypeDiscovery")]
pub const Discovery: Self = Self(0x70);
#[doc(alias = "kMIDICIManagementMessageTypeReplyToDiscovery")]
pub const ReplyToDiscovery: Self = Self(0x71);
#[doc(alias = "kMIDICIManagementMessageTypeInquiryEndpointInformation")]
pub const InquiryEndpointInformation: Self = Self(0x72);
#[doc(alias = "kMIDICIManagementMessageTypeReplyToEndpointInformation")]
pub const ReplyToEndpointInformation: Self = Self(0x73);
#[doc(alias = "kMIDICIManagementMessageTypeMIDICIACK")]
pub const MIDICIACK: Self = Self(0x7D);
#[doc(alias = "kMIDICIManagementMessageTypeInvalidateMUID")]
pub const InvalidateMUID: Self = Self(0x7E);
#[doc(alias = "kMIDICIManagementMessageTypeMIDICINAK")]
pub const MIDICINAK: Self = Self(0x7F);
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl Encode for MIDICIManagementMessageType {
const ENCODING: Encoding = MIDIUInteger7::ENCODING;
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl RefEncode for MIDICIManagementMessageType {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct MIDICIProfileType(pub u8);
impl MIDICIProfileType {
#[doc(alias = "kMIDICIProfileTypeSingleChannel")]
pub const SingleChannel: Self = Self(1);
#[doc(alias = "kMIDICIProfileTypeGroup")]
pub const Group: Self = Self(2);
#[doc(alias = "kMIDICIProfileTypeFunctionBlock")]
pub const FunctionBlock: Self = Self(3);
#[doc(alias = "kMIDICIProfileTypeMultichannel")]
pub const Multichannel: Self = Self(4);
}
#[cfg(feature = "objc2")]
unsafe impl Encode for MIDICIProfileType {
const ENCODING: Encoding = u8::ENCODING;
}
#[cfg(feature = "objc2")]
unsafe impl RefEncode for MIDICIProfileType {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct MIDIUMPCIObjectBackingType(pub u8);
impl MIDIUMPCIObjectBackingType {
#[doc(alias = "kMIDIUMPCIObjectBackingTypeUnknown")]
pub const Unknown: Self = Self(0);
#[doc(alias = "kMIDIUMPCIObjectBackingTypeVirtual")]
pub const Virtual: Self = Self(1);
#[doc(alias = "kMIDIUMPCIObjectBackingTypeDriverDevice")]
pub const DriverDevice: Self = Self(2);
#[doc(alias = "kMIDIUMPCIObjectBackingTypeUSBMIDI")]
pub const USBMIDI: Self = Self(3);
}
#[cfg(feature = "objc2")]
unsafe impl Encode for MIDIUMPCIObjectBackingType {
const ENCODING: Encoding = u8::ENCODING;
}
#[cfg(feature = "objc2")]
unsafe impl RefEncode for MIDIUMPCIObjectBackingType {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[cfg(feature = "MIDIMessages")]
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct MIDICIProfileIDStandard {
pub profileIDByte1: MIDIUInteger7,
pub profileBank: MIDIUInteger7,
pub profileNumber: MIDIUInteger7,
pub profileVersion: MIDIUInteger7,
pub profileLevel: MIDIUInteger7,
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl Encode for MIDICIProfileIDStandard {
const ENCODING: Encoding = Encoding::Struct(
"?",
&[
<MIDIUInteger7>::ENCODING,
<MIDIUInteger7>::ENCODING,
<MIDIUInteger7>::ENCODING,
<MIDIUInteger7>::ENCODING,
<MIDIUInteger7>::ENCODING,
],
);
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl RefEncode for MIDICIProfileIDStandard {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[cfg(feature = "MIDIMessages")]
#[repr(C)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct MIDICIProfileIDManufacturerSpecific {
pub sysExID1: MIDIUInteger7,
pub sysExID2: MIDIUInteger7,
pub sysExID3: MIDIUInteger7,
pub info1: MIDIUInteger7,
pub info2: MIDIUInteger7,
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl Encode for MIDICIProfileIDManufacturerSpecific {
const ENCODING: Encoding = Encoding::Struct(
"?",
&[
<MIDIUInteger7>::ENCODING,
<MIDIUInteger7>::ENCODING,
<MIDIUInteger7>::ENCODING,
<MIDIUInteger7>::ENCODING,
<MIDIUInteger7>::ENCODING,
],
);
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl RefEncode for MIDICIProfileIDManufacturerSpecific {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[cfg(feature = "MIDIMessages")]
#[repr(C)]
#[derive(Clone, Copy)]
pub union MIDICIProfileID {
pub standard: MIDICIProfileIDStandard,
pub manufacturerSpecific: MIDICIProfileIDManufacturerSpecific,
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl Encode for MIDICIProfileID {
const ENCODING: Encoding = Encoding::Union(
"?",
&[
<MIDICIProfileIDStandard>::ENCODING,
<MIDICIProfileIDManufacturerSpecific>::ENCODING,
],
);
}
#[cfg(all(feature = "MIDIMessages", feature = "objc2"))]
unsafe impl RefEncode for MIDICIProfileID {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
pub type MIDICIPropertyExchangeRequestID = u8;
pub static kMIDICIPropertyExchangeBadRequestID: MIDICIPropertyExchangeRequestID = 0xFF;