#import <Foundation/Foundation.h>
#import <Foundation/NSObject.h>
#import "MKConductor.h"
#import "params.h"
Go to the source code of this file.
Classes | |
class | MKNote |
A MKNote object represents a musical sound or event by describing its attributes. More... | |
Typedefs | |
typedef enum _MKNoteType | MKNoteType |
This enumeration defines the types of MKNote objects. The types are as follows. | |
typedef enum _MKDataType | MKDataType |
This enumeration defines the types of parameters in MKNote objects. | |
Enumerations | |
enum | _MKNoteType { MK_noteDur = 257, MK_noteOn, MK_noteOff, MK_noteUpdate, MK_mute } |
This enumeration defines the types of MKNote objects. The types are as follows. More... | |
enum | _MKDataType { MK_noType = ((int)MK_sysReset + 1), MK_double, MK_string, MK_int, MK_object, MK_envelope, MK_waveTable } |
This enumeration defines the types of parameters in MKNote objects. More... | |
Functions | |
unsigned | MKNoteTag (void) |
Create note tags. MKNoteTag() returns a note tag value that's guaranteed to be unique across your entire application. | |
unsigned | MKNoteTags (unsigned n) |
Create note tags. MKNoteTags() returns the first of a block of n unique, contiguous note tags. | |
double | MKdB (double dB) |
Convert decibels to amplitude. | |
double | MKMidiToAmp (int midiValue) |
Translate loudness from the MusicKit to MIDI. Maps MIDI value (such as velocity) onto an amplitude scaler such that 64->1.0, 127->10.0, and 0->0. | |
double | MKMidiToAmpWithSensitivity (int midiValue, double sensitivity) |
Translate loudness from the MusicKit to MIDI. Same as MKMidiToAmp, but uses sensitivity to control how much effect midiValue has. | |
int | MKAmpToMidi (double amp) |
Translate loudness from the MusicKit to MIDI. Maps an amplitude scaler onto velocity such that MKAmpToMidi(MKMidiToAmp(x)) == x. | |
double | MKMidiToAmpAttenuation (int midiValue) |
Translate loudness from the MusicKit to MIDI. Maps MIDI controller values (e.g. volume pedal) onto an amplitude scaler such that 64->0.1, 127->1.0, and 0->0. | |
double | MKMidiToAmpAttenuationWithSensitivity (int midiValue, double sensitivity) |
Translate loudness from the MusicKit to MIDI. Maps MIDI controller values (e.g. volume pedal) onto an amplitude scaler such that 64->0.1, 127->1.0, and 0->0. Uses sensitivity to control how much effect midiValue has. | |
int | MKAmpAttenuationToMidi (double amp) |
Translate loudness from the MusicKit to MIDI. Maps an amplitude scaler onto velocity such that MKAmpAttenuationToMidi(MKMidiToAmpAttenuation(x)) == x. | |
int | MKHighestPar (void) |
Returns the parameter tag of the highest numbered parameter. | |
NSHashEnumerator * | MKInitParameterIteration (MKNote *aNote) |
Query for a MKNote's parameters. | |
int | MKNextParameter (MKNote *aNote, NSHashEnumerator *iterationState) |
Retrieve the next parameter. | |
id | MKSetNoteParToDouble (MKNote *aNote, int par, double value) |
Set a MKNote's parameter to a double value. | |
id | MKSetNoteParToInt (MKNote *aNote, int par, int value) |
Set a MKNote's parameter to an integer value. | |
id | MKSetNoteParToString (MKNote *aNote, int par, NSString *value) |
Set a MKNote's parameter to a NSString value. | |
id | MKSetNoteParToEnvelope (MKNote *aNote, int par, id envObj) |
Set a MKNote's parameter to a MKEnvelope value. | |
id | MKSetNoteParToWaveTable (MKNote *aNote, int par, id waveObj) |
Set a MKNote's parameter to a MKWaveTable value. | |
id | MKSetNoteParToObject (MKNote *aNote, int par, id anObj) |
Set a MKNote's parameter to an Object value. | |
double | MKGetNoteParAsDouble (MKNote *aNote, int par) |
Retrieve an MKNote's parameter as a double value. | |
int | MKGetNoteParAsInt (MKNote *aNote, int par) |
Retrieve an MKNote's parameter as an integer value. | |
NSString * | MKGetNoteParAsString (MKNote *aNote, int par) |
Retrieve an MKNote's parameter as a NSString value. | |
NSString * | MKGetNoteParAsStringNoCopy (MKNote *aNote, int par) |
Retrieve an MKNote's parameter as a NSString value. | |
id | MKGetNoteParAsEnvelope (MKNote *aNote, int par) |
Retrieve an MKNote's parameter as an MKEnvelope value. | |
id | MKGetNoteParAsWaveTable (MKNote *aNote, int par) |
Retrieve an MKNote's parameter as an MKWaveTable value. | |
id | MKGetNoteParAsObject (MKNote *aNote, int par) |
Retrieve an MKNote's parameter as an object value. | |
BOOL | MKIsNoteParPresent (MKNote *aNote, int par) |
Query for a MKNote's parameters. |
enum _MKDataType |
This enumeration defines the types of parameters in MKNote objects.
MK_noType | Invalid type. |
MK_double | C Double value. |
MK_string | Character string value. |
MK_int | C int value. |
MK_object | Generic object value. Object must implement scorefile object protocol. |
MK_envelope | MKEnvelope object value. Object must implement MKEnvelope protocol. |
MK_waveTable | MKWaveTable object value. Object must implement MKWaveTable protocol. |
enum _MKNoteType |
This enumeration defines the types of MKNote objects. The types are as follows.
MK_noteDur | A MKNote with a duration. Can have a noteTag. |
MK_noteOn | The start of a musical note. Must have a noteTag. |
MK_noteOff | The onset of the ending portion of a musical note. Must have a noteTag. |
MK_noteUpdate | An update to an already-playing musical note. Can have a noteTag. |
MK_mute | A MKNote that makes no sound. May not have a noteTag. |