47 #if PRAGMA_STRUCT_ALIGN
48 #pragma options align = mac68k
49 #elif PRAGMA_STRUCT_PACKPUSH
51 #elif PRAGMA_STRUCT_PACK
135 midiStartCont = 0x01,
141 midiTimeStampMask = 0x80,
142 midiTimeStampCurrent = 0x80,
143 midiTimeStampValid = 0x00
162 midiNoMorePacket = 2,
175 mdvrAbortNotesOff = 0,
195 typedef CALLBACK_API(
short, MIDIReadHookProcPtr)(
MIDIPacketPtr myPacket,
197 typedef CALLBACK_API(
void, MIDITimeProcPtr)(
long curTime,
long myRefCon);
198 typedef CALLBACK_API(
void,
199 MIDIConnectionProcPtr)(
short refnum,
long refcon,
200 short portType, OSType clientID,
201 OSType portID,
Boolean connect,
203 typedef CALLBACK_API(
long, MDVRCommProcPtr)(
short refnum,
short request,
205 typedef CALLBACK_API(
void, MDVRTimeCodeProcPtr)(
short refnum,
short newFormat,
207 typedef CALLBACK_API(
void, MDVRReadProcPtr)(
char *midiChars,
short length,
286 typedef void *MDVRPtr;
287 #if CALL_NOT_IN_CARBON
308 MIDISignIn(OSType clientID,
long refCon, Handle icon, ConstStr255Param name);
500 MIDIWakeUp(
short refnum,
long time,
long period, MIDITimeUPP timeProc);
786 MDVRSignIn(OSType clientID,
long refCon, Handle icon, Str255 name);
863 MDVROut(MDVRPtr portPtr,
char *dataPtr,
short length);
878 #if CALL_NOT_IN_CARBON
889 #if !OPAQUE_UPP_TYPES
892 uppMIDIReadHookProcInfo = 0x000003E0
898 uppMIDIReadHookProcInfo,
899 GetCurrentArchitecture());
902 #define NewMIDIReadHookUPP(userRoutine) \
904 NewRoutineDescriptor((ProcPtr)(userRoutine), uppMIDIReadHookProcInfo, \
905 GetCurrentArchitecture())
919 #if !OPAQUE_UPP_TYPES
922 uppMIDITimeProcInfo = 0x000003C0
928 (ProcPtr)(userRoutine), uppMIDITimeProcInfo, GetCurrentArchitecture());
931 #define NewMIDITimeUPP(userRoutine) \
932 (MIDITimeUPP) NewRoutineDescriptor( \
933 (ProcPtr)(userRoutine), uppMIDITimeProcInfo, GetCurrentArchitecture())
947 #if !OPAQUE_UPP_TYPES
950 uppMIDIConnectionProcInfo = 0x0009FB80
954 inline MIDIConnectionUPP
958 uppMIDIConnectionProcInfo,
959 GetCurrentArchitecture());
962 #define NewMIDIConnectionUPP(userRoutine) \
963 (MIDIConnectionUPP) \
964 NewRoutineDescriptor((ProcPtr)(userRoutine), uppMIDIConnectionProcInfo, \
965 GetCurrentArchitecture())
979 #if !OPAQUE_UPP_TYPES
982 uppMDVRCommProcInfo = 0x00000EB0
988 (ProcPtr)(userRoutine), uppMDVRCommProcInfo, GetCurrentArchitecture());
991 #define NewMDVRCommUPP(userRoutine) \
992 (MDVRCommUPP) NewRoutineDescriptor( \
993 (ProcPtr)(userRoutine), uppMDVRCommProcInfo, GetCurrentArchitecture())
1007 #if !OPAQUE_UPP_TYPES
1010 uppMDVRTimeCodeProcInfo = 0x00000E80
1016 uppMDVRTimeCodeProcInfo,
1017 GetCurrentArchitecture());
1020 #define NewMDVRTimeCodeUPP(userRoutine) \
1022 NewRoutineDescriptor((ProcPtr)(userRoutine), uppMDVRTimeCodeProcInfo, \
1023 GetCurrentArchitecture())
1037 #if !OPAQUE_UPP_TYPES
1040 uppMDVRReadProcInfo = 0x00000EC0
1046 (ProcPtr)(userRoutine), uppMDVRReadProcInfo, GetCurrentArchitecture());
1049 #define NewMDVRReadUPP(userRoutine) \
1050 (MDVRReadUPP) NewRoutineDescriptor( \
1051 (ProcPtr)(userRoutine), uppMDVRReadProcInfo, GetCurrentArchitecture())
1065 #if !OPAQUE_UPP_TYPES
1072 #define DisposeMIDIReadHookUPP(userUPP) DisposeRoutineDescriptor(userUPP)
1086 #if !OPAQUE_UPP_TYPES
1093 #define DisposeMIDITimeUPP(userUPP) DisposeRoutineDescriptor(userUPP)
1107 #if !OPAQUE_UPP_TYPES
1114 #define DisposeMIDIConnectionUPP(userUPP) DisposeRoutineDescriptor(userUPP)
1128 #if !OPAQUE_UPP_TYPES
1135 #define DisposeMDVRCommUPP(userUPP) DisposeRoutineDescriptor(userUPP)
1149 #if !OPAQUE_UPP_TYPES
1156 #define DisposeMDVRTimeCodeUPP(userUPP) DisposeRoutineDescriptor(userUPP)
1170 #if !OPAQUE_UPP_TYPES
1177 #define DisposeMDVRReadUPP(userUPP) DisposeRoutineDescriptor(userUPP)
1191 MIDIReadHookUPP userUPP);
1192 #if !OPAQUE_UPP_TYPES
1195 MIDIReadHookUPP userUPP)
1197 return (
short)CALL_TWO_PARAMETER_UPP(userUPP, uppMIDIReadHookProcInfo,
1198 myPacket, myRefCon);
1201 #define InvokeMIDIReadHookUPP(myPacket, myRefCon, userUPP) \
1202 (short)CALL_TWO_PARAMETER_UPP((userUPP), uppMIDIReadHookProcInfo, \
1203 (myPacket), (myRefCon))
1217 #if !OPAQUE_UPP_TYPES
1220 MIDITimeUPP userUPP)
1222 CALL_TWO_PARAMETER_UPP(userUPP, uppMIDITimeProcInfo, curTime, myRefCon);
1225 #define InvokeMIDITimeUPP(curTime, myRefCon, userUPP) \
1226 CALL_TWO_PARAMETER_UPP((userUPP), uppMIDITimeProcInfo, (curTime), (myRefCon))
1240 OSType clientID, OSType portID,
Boolean connect,
1241 short direction, MIDIConnectionUPP userUPP);
1242 #if !OPAQUE_UPP_TYPES
1245 OSType clientID, OSType portID,
1246 Boolean connect,
short direction,
1247 MIDIConnectionUPP userUPP)
1249 CALL_SEVEN_PARAMETER_UPP(userUPP, uppMIDIConnectionProcInfo, refnum, refcon,
1250 portType, clientID, portID, connect, direction);
1253 #define InvokeMIDIConnectionUPP(refnum, refcon, portType, clientID, portID, \
1254 connect, direction, userUPP) \
1255 CALL_SEVEN_PARAMETER_UPP((userUPP), uppMIDIConnectionProcInfo, (refnum), \
1256 (refcon), (portType), (clientID), (portID), \
1257 (connect), (direction))
1271 MDVRCommUPP userUPP);
1272 #if !OPAQUE_UPP_TYPES
1275 MDVRCommUPP userUPP)
1277 return (
long)CALL_THREE_PARAMETER_UPP(userUPP, uppMDVRCommProcInfo, refnum,
1281 #define InvokeMDVRCommUPP(refnum, request, refCon, userUPP) \
1282 (long)CALL_THREE_PARAMETER_UPP((userUPP), uppMDVRCommProcInfo, (refnum), \
1283 (request), (refCon))
1297 MDVRTimeCodeUPP userUPP);
1298 #if !OPAQUE_UPP_TYPES
1301 MDVRTimeCodeUPP userUPP)
1303 CALL_THREE_PARAMETER_UPP(userUPP, uppMDVRTimeCodeProcInfo, refnum, newFormat,
1307 #define InvokeMDVRTimeCodeUPP(refnum, newFormat, refCon, userUPP) \
1308 CALL_THREE_PARAMETER_UPP((userUPP), uppMDVRTimeCodeProcInfo, (refnum), \
1309 (newFormat), (refCon))
1323 MDVRReadUPP userUPP);
1324 #if !OPAQUE_UPP_TYPES
1327 MDVRReadUPP userUPP)
1329 CALL_THREE_PARAMETER_UPP(userUPP, uppMDVRReadProcInfo, midiChars, length,
1333 #define InvokeMDVRReadUPP(midiChars, length, refCon, userUPP) \
1334 CALL_THREE_PARAMETER_UPP((userUPP), uppMDVRReadProcInfo, (midiChars), \
1341 #if CALL_NOT_IN_CARBON || OLDROUTINENAMES
1343 #define NewMIDIReadHookProc(userRoutine) NewMIDIReadHookUPP(userRoutine)
1344 #define NewMIDITimeProc(userRoutine) NewMIDITimeUPP(userRoutine)
1345 #define NewMIDIConnectionProc(userRoutine) NewMIDIConnectionUPP(userRoutine)
1346 #define NewMDVRCommProc(userRoutine) NewMDVRCommUPP(userRoutine)
1347 #define NewMDVRTimeCodeProc(userRoutine) NewMDVRTimeCodeUPP(userRoutine)
1348 #define NewMDVRReadProc(userRoutine) NewMDVRReadUPP(userRoutine)
1349 #define CallMIDIReadHookProc(userRoutine, myPacket, myRefCon) \
1350 InvokeMIDIReadHookUPP(myPacket, myRefCon, userRoutine)
1351 #define CallMIDITimeProc(userRoutine, curTime, myRefCon) \
1352 InvokeMIDITimeUPP(curTime, myRefCon, userRoutine)
1353 #define CallMIDIConnectionProc(userRoutine, refnum, refcon, portType, \
1354 clientID, portID, connect, direction) \
1355 InvokeMIDIConnectionUPP(refnum, refcon, portType, clientID, portID, connect, \
1356 direction, userRoutine)
1357 #define CallMDVRCommProc(userRoutine, refnum, request, refCon) \
1358 InvokeMDVRCommUPP(refnum, request, refCon, userRoutine)
1359 #define CallMDVRTimeCodeProc(userRoutine, refnum, newFormat, refCon) \
1360 InvokeMDVRTimeCodeUPP(refnum, newFormat, refCon, userRoutine)
1361 #define CallMDVRReadProc(userRoutine, midiChars, length, refCon) \
1362 InvokeMDVRReadUPP(midiChars, length, refCon, userRoutine)
1365 #if PRAGMA_STRUCT_ALIGN
1366 #pragma options align = reset
1367 #elif PRAGMA_STRUCT_PACKPUSH
1369 #elif PRAGMA_STRUCT_PACK
1373 #ifdef PRAGMA_IMPORT_OFF
1376 #pragma import reset
void MIDISignOut(OSType clientID)
#define NewMIDIReadHookUPP(userRoutine)
Definition: MIDI.h:902
void MIDIGetConnectionProc(short refnum, ProcPtr *connectionProc, long *refCon)
void DisposeMIDIReadHookUPP(MIDIReadHookUPP userUPP)
void MIDISetClientName(OSType clientID, ConstStr255Param name)
void InvokeMDVRReadUPP(char *midiChars, short length, long refCon, MDVRReadUPP userUPP)
OSErr MIDIUnConnectTime(OSType srcClID, OSType srcPortID, OSType dstClID, OSType dstPortID)
#define NewMIDIConnectionUPP(userRoutine)
Definition: MIDI.h:962
void DisposeMDVRTimeCodeUPP(MDVRTimeCodeUPP userUPP)
void MDVRNotesOff(MDVRPtr portPtr, short mode)
long MIDIGetOffsetTime(short refnum)
NumVersion MIDIVersion(void)
void MIDIStartTime(short refnum)
void MIDIRemovePort(short refnum)
void DisposeMIDITimeUPP(MIDITimeUPP userUPP)
@ mdvrAllNotesOff
Definition: MIDI.h:177
@ mdvrChanNotesOff
Definition: MIDI.h:176
void MDVRControlIn(MDVRPtr portPtr, MDVRInCtlPtr inputCtl)
@ midiKeepPacket
Definition: MIDI.h:160
ProcPtr MIDIGetReadHook(short refnum)
short MIDIGetSync(short refnum)
void MIDISetCurTime(short refnum, long time)
void MIDISetConnectionProc(short refNum, ProcPtr connectionProc, long refCon)
void DisposeMDVRCommUPP(MDVRCommUPP userUPP)
void MIDISetClRefCon(OSType clientID, long refCon)
@ mdvrStartOut
Definition: MIDI.h:183
@ midiPortTypeOutput
Definition: MIDI.h:97
@ midiPortTypeInput
Definition: MIDI.h:96
@ midiPortTypeTimeInv
Definition: MIDI.h:98
@ midiPortInvisible
Definition: MIDI.h:99
@ midiPortTypeTime
Definition: MIDI.h:95
@ midiPortTypeMask
Definition: MIDI.h:101
@ midiFormat24fpsQF
Definition: MIDI.h:80
@ midiFormat30fpsBit
Definition: MIDI.h:79
@ midiFormat30fpsQF
Definition: MIDI.h:83
@ midiFormatBeats
Definition: MIDI.h:75
@ midiFormat25fpsQF
Definition: MIDI.h:81
@ midiFormatMSec
Definition: MIDI.h:74
@ midiFormat30fpsDBit
Definition: MIDI.h:78
@ midiFormat30fpsDQF
Definition: MIDI.h:82
@ midiFormat24fpsBit
Definition: MIDI.h:76
@ midiFormat25fpsBit
Definition: MIDI.h:77
void MIDIPoll(short refnum, long offsetTime)
OSErr MIDIUnConnectData(OSType srcClID, OSType srcPortID, OSType dstClID, OSType dstPortID)
long MIDIGetCurTime(short refnum)
void MIDISetReadHook(short refnum, ProcPtr hook)
OSErr MIDIConnectData(OSType srcClID, OSType srcPortID, OSType dstClID, OSType dstPortID)
void MIDIFlush(short refnum)
long MIDIConvertTime(short srcFormat, short dstFormat, long time)
void InvokeMIDIConnectionUPP(short refnum, long refcon, short portType, OSType clientID, OSType portID, Boolean connect, short direction, MIDIConnectionUPP userUPP)
long MIDIGetClRefCon(OSType clientID)
OSErr MIDISignIn(OSType clientID, long refCon, Handle icon, ConstStr255Param name)
#define NewMDVRCommUPP(userRoutine)
Definition: MIDI.h:991
void MIDISetRefCon(short refnum, long refCon)
void DisposeMIDIConnectionUPP(MIDIConnectionUPP userUPP)
void MIDIGetClientName(OSType clientID, Str255 name)
void MIDISetTCFormat(short refnum, short format)
void MIDIStopTime(short refnum)
OSErr MIDIConnectTime(OSType srcClID, OSType srcPortID, OSType dstClID, OSType dstPortID)
void MIDISetPortName(OSType clientID, OSType portID, ConstStr255Param name)
long MIDIGetRefCon(short refnum)
short MIDIGetTCFormat(short refnum)
ProcPtr MIDICallAddress(short callNum)
void MIDISetRunRate(short refnum, short rate, long time)
MIDIIDListHandle MIDIGetClients(void)
MIDIPortInfoHandle MIDIGetPortInfo(OSType clientID, OSType portID)
@ midiGetEverything
Definition: MIDI.h:108
@ midiGetNothing
Definition: MIDI.h:110
@ midiGetCurrent
Definition: MIDI.h:112
void MDVRIn(MDVRPtr portPtr)
@ midiOpenDriver
Definition: MIDI.h:169
void MDVROut(MDVRPtr portPtr, char *dataPtr, short length)
void DisposeMDVRReadUPP(MDVRReadUPP userUPP)
void MDVRSignOut(OSType clientID)
long InvokeMDVRCommUPP(short refnum, short request, long refCon, MDVRCommUPP userUPP)
OSErr MIDIAddPort(OSType clientID, short BufSize, short *refnum, MIDIPortParamsPtr init)
void MDVRControlOut(MDVRPtr portPtr, MDVROutCtlPtr outputCtl)
void MIDISetSync(short refnum, short sync)
MDVRPtr MDVROpen(short portType, short refnum)
void MIDIGetPortName(OSType clientID, OSType portID, Str255 name)
Handle MIDIGetClientIcon(OSType clientID)
void InvokeMIDITimeUPP(long curTime, long myRefCon, MIDITimeUPP userUPP)
#define NewMDVRReadUPP(userRoutine)
Definition: MIDI.h:1049
OSErr MDVRSignIn(OSType clientID, long refCon, Handle icon, Str255 name)
MIDIIDListHandle MIDIGetPorts(OSType clientID)
void MIDISetOffsetTime(short refnum, long offsetTime)
@ midiOverflowErr
Definition: MIDI.h:150
@ midiMaxErr
Definition: MIDI.h:154
#define NewMDVRTimeCodeUPP(userRoutine)
Definition: MIDI.h:1020
#define NewMIDITimeUPP(userRoutine)
Definition: MIDI.h:931
void InvokeMDVRTimeCodeUPP(short refnum, short newFormat, long refCon, MDVRTimeCodeUPP userUPP)
Boolean MIDIWorldChanged(OSType clientID)
OSErr MIDIWritePacket(short refnum, MIDIPacketPtr packet)
void MIDIDiscardPacket(short refnum, MIDIPacketPtr packet)
void MIDIWakeUp(short refnum, long time, long period, MIDITimeUPP timeProc)
short InvokeMIDIReadHookUPP(MIDIPacketPtr myPacket, long myRefCon, MIDIReadHookUPP userUPP)
void MDVRClose(MDVRPtr driverPtr)
@ midiExternalSync
Definition: MIDI.h:89
Basic Macintosh data types.
unsigned char Boolean
Definition: MacTypes.h:318
Mixed Mode Manager Interfaces.
void DisposeRoutineDescriptor(UniversalProcPtr theUPP)
#define STACK_UPP_TYPE(name)
Definition: MixedMode.h:734
UniversalProcPtr NewRoutineDescriptor(ProcPtr theProc, ProcInfoType theProcInfo, ISAType theISA)
long refCon
Definition: MIDI.h:268
short timeCodeFormat
Definition: MIDI.h:265
MDVRReadUPP readProc
Definition: MIDI.h:266
MDVRCommUPP commProc
Definition: MIDI.h:267
Boolean timeCodeFilter
Definition: MIDI.h:279
long midiMsgTicks
Definition: MIDI.h:281
UInt8 padding
Definition: MIDI.h:280
long timeCodeTicks
Definition: MIDI.h:282
MDVRCommUPP commProc
Definition: MIDI.h:277
MDVRTimeCodeUPP timeCodeProc
Definition: MIDI.h:276
short timeCodeFormat
Definition: MIDI.h:275
long refCon
Definition: MIDI.h:278
long curTime
Definition: MIDI.h:218
short format
Definition: MIDI.h:219
short numConnects
Definition: MIDI.h:232
MIDIIDRec timeBase
Definition: MIDI.h:231
MIDIIDRec cList[1]
Definition: MIDI.h:233
long refCon
Definition: MIDI.h:246
Str255 name
Definition: MIDI.h:248
short portType
Definition: MIDI.h:242
short timeBase
Definition: MIDI.h:243
long offsetTime
Definition: MIDI.h:244
MIDIClkInfo initClock
Definition: MIDI.h:247
MIDIReadHookUPP readHook
Definition: MIDI.h:245
Definition: MacTypes.h:638
Definition: TranslationExtensions.h:114