00001 /* 00002 $Id: Pluck.h 3291 2005-05-31 10:57:33Z leighsmith $ 00003 00004 Defined In: The MusicKit 00005 Description: 00006 (See discussion below) 00007 00008 Original Author: David A. Jaffe 00009 00010 Copyright (c) 1988-1992, NeXT Computer, Inc. 00011 Portions Copyright (c) 1994 NeXT Computer, Inc. and reproduced under license from NeXT 00012 Portions Copyright (c) 1994 Stanford University. 00013 Portions Copyright (c) 1999-2005, The MusicKit Project. 00014 */ 00074 #ifndef __MK_Pluck_H___ 00075 #define __MK_Pluck_H___ 00076 00077 #import <MusicKit/MKSynthPatch.h> 00078 00079 @interface Pluck:MKSynthPatch 00080 { 00081 /* Here are the parameters. */ 00082 double freq; 00083 double sustain; 00084 double ampRel; 00085 double decay; 00086 double bright; 00087 double amp; 00088 double bearing; 00089 double baseFreq; 00090 int pitchBend; 00091 double pitchBendSensitivity; 00092 double velocitySensitivity; 00093 int velocity; 00094 int volume; 00095 id _reservedPluck1; 00096 id _reservedPluck2; 00097 int _reservedPluck3; 00098 void * _reservedPluck4; 00099 } 00100 00101 00109 + patchTemplateFor: (MKNote *) currentNote; 00110 00111 - init; 00112 00121 - noteOnSelf: (MKNote *) aNote; 00122 00130 - noteUpdateSelf: (MKNote *) aNote; 00131 00140 - (double) noteOffSelf: (MKNote *) aNote; 00141 00146 - noteEndSelf; 00147 00153 - preemptFor: (MKNote *) aNote; 00154 00155 @end 00156 00157 #endif