MusicKit Functions

Refer to MusicKit Function References for descriptions of the functions (and function-like macros) that are provided by the MusicKit. Many of the functions are auxiliary to the Kit's classes in that they augment or are superceded by one or more classes. Of the rest, some functions provide information or functionality that can't be gotten elsewhere, while some others are convenient but not necessarily the only way to address a particular topic.

The following sections don't attempt to describe what individual functions do―the names of the functions are fairly descriptive in themselves―they merely list the functions as they fall into broad categories.

Amplitude Scaling

These functions convert between MIDI and MKNote amplitude representations:

MKAmpToMidi(), MKAmpAttenuationToMidi(), MKMidiToAmp(), MKMidiToAmpAttenuation(), MKMidiToAmpWithSensitivity(), MKMidiToAmpAttenuationWithSensitivity(), MKdB()

Frequency Scaling

These functions convert between MIDI and MKNote frequency representations:

MKKeyNumToFreq(), MKFreqToKeyNum(), MKTranspose(), MKAdjustFreqWithPitchBend()

Error Handling and Trace Debugging

MKError(), MKSetErrorProc(), MKSetErrorStream(), MKErrorStream(), MKSetTrace(), MKClearTrace(), MKIsTraced()

Time Manipulation

MKGetTime(), MKGetDeltaT(), MKSetDeltaT(), MKGetDeltaTTime(), MKFinishPerformance(), MKSetTime(), MKSetLowDeltaTThreshold(), MKSetHighDeltaTThreshold(), MKSetDeltaTMode(), MKGetDeltaTMode()

No-Value Return from Floating Point Functions

MKIsNoDVal(), MKGetNoDVal()

Note Parameter Access

MKIsNoteParPresent(), MKInitParameterIteration(), MKNextParameter(), MKHighestPar(), MKSetNoteParToDouble(), MKSetNoteParToInt(), MKSetNoteParToString(), MKSetNoteParToEnvelope(), MKSetNoteParToWaveTable(), MKSetNoteParToObject(), MKGetNoteParAsDouble(), MKGetNoteParAsInt(), MKGetNoteParAsString(), MKGetNoteParAsStringNoCopy(), MKGetNoteParAsEnvelope(), MKGetNoteParAsWaveTable(), MKGetNoteParAsObject()

Named Objects

These functions differ from the NeXTSTEP/OpenStep versions in being stored in a separate symbol table.

MKNameObject(), MKGetObjectName(), MKRemoveObjectName(), MKGetNamedObject()

Message Scheduling

MKNewMsgRequest(), MKScheduleMsgRequest(), MKRepositionMsgRequest(), MKCancelMsgRequest(), MKRescheduleMsgRequest()

NoteTag Allocation

MKNoteTag(), MKNoteTags()

Posing As―Class Substitution

MKSetNoteClass(), MKSetPartClass(), MKSetEnvelopeClass(), MKSetPartialsClass(), MKSetSamplesClass(), MKGetNoteClass(), MKGetPartClass(), MKGetEnvelopeClass(), MKGetPartialsClass(), MKGetSamplesClass()

Note Preemption

MKSetPreemptDuration(), MKGetPreemptDuration()

Scorefile Parsing and Writing

MKSetScorefileParseErrorAbort(), MKWritePitchNames()

UnitGenerator Implementation

MKSetUGAddressArg(), MKSetUGAddressArgToInt(), MKSetUGDatumArg(), MKSetUGDatumArgLong()

Envelope Handling

MKUpdateAsymp()