MusicKit  0.0.0
_Wave1i.h
00001 /*
00002   $Id$
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-2001, The MusicKit Project.
00014 */
00015 /*
00016   $Log$
00017   Revision 1.2  2001/09/08 20:22:09  leighsmith
00018   Merged RTF Reference documentation into headerdoc comments and prepended MK to any older class names
00019 
00020 */
00021 #ifndef __MK__Wave1i_H___
00022 #define __MK__Wave1i_H___
00023 
00024 #import "Wave1i.h"
00025 
00026 typedef struct __MKSPWAVENums {
00027   short ampUG, incUG, oscUG, outUG, svibUG, nvibUG, onepUG,
00028       addUG, mulUG, xsig, ysig;
00029 } _MKSPWAVENums;
00030 
00031 /* Don't bother with prefix for macros since they're only in compile-time
00032    address space. */
00033 
00034 #define WAVEDECL(_template,_struct) \
00035   static id _template = nil;\
00036   static _MKSPWAVENums _struct = {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1}
00037 
00038 #define WAVENUM(ugname) (((_MKSPWAVENums *)(_ugNums))->ugname)
00039 //#define WAVEUG(ugname) NX_ADDRESS(synthElements)[WAVENUM(ugname)] //sb
00040 #define WAVEUG(ugname) [synthElements objectAtIndex:WAVENUM(ugname)]
00041 #define _ugNums _reservedWave1i
00042 #define MIDIVAL(midiControllerValue) \
00043   ((double)midiControllerValue)/((double)MIDI_MAXDATA)
00044 
00045 extern id _MKSPGetWaveNoVibTemplate(_MKSPWAVENums *ugs,id oscClass);
00046 extern id _MKSPGetWaveAllVibTemplate(_MKSPWAVENums *ugs,id oscClass);
00047 extern id _MKSPGetWaveRanVibTemplate(_MKSPWAVENums *ugs,id oscClass);
00048 extern id _MKSPGetWaveSinVibTemplate(_MKSPWAVENums *ugs,id oscClass);
00049 
00050 @interface Wave1i(Private)
00051 
00052 -(void)_setModWheel:(int)val;
00053 -(void)_setSvibFreq0:(double)val;
00054 -(void)_setSvibFreq1:(double)val;
00055 -(void)_setSvibAmp0:(double)val;
00056 -(void)_setSvibAmp1:(double)val;
00057 -(void)_setRvibAmp:(double)val;
00058 -(void)_setVibWaveform:(id)obj;
00059 -(void)_setVib:(BOOL)setVibWaveform :(BOOL)setVibFreq :(BOOL)setVibAmp 
00060   :(BOOL)setRandomVib :(BOOL)newPhrase;
00061 -_updateParameters:aNote;
00062 -_setDefaults;
00063 
00064 @end
00065 
00066 #endif