00001
00002
00003
00004
00005
00006
00007
00008
00009
#import <AppKit/AppKit.h>
00010
#import <AudioUnit/AudioUnit.h>
00011
#import <AudioToolbox/AudioToolbox.h>
00012
00013 @
class AUGUIParameterBinding;
00014
00015 @interface AUGUIView : NSView {
00016
00017 AudioUnit
mAU;
00018 AUParameterListenerRef
mParameterListener;
00019
00020 NSMutableArray *
mBindings;
00021 IBOutlet NSMutableDictionary *
mParams;
00022 }
00023
00024
#pragma mark ____ PUBLIC FUNCTIONS ____
00025
- (
void)setAU:(AudioUnit)inAU;
00026 - (AudioUnit)AU;
00027
00028 - (
void)registerBinding:(AUGUIParameterBinding *)binding;
00029 - (
void)setParameter:(
int)paramID fromControl:(NSControl *)control;
00030
00031
#pragma mark ____ PRIVATE FUNCTIONS
00032
- (
void)_synchronizeUIWithParameterValues;
00033 - (
void)_addListeners;
00034 - (
void)_removeListeners;
00035
00036
#pragma mark ____ LISTENER CALLBACK DISPATCHEE ____
00037
- (
void)_parameterListener:(
void *)inObject parameter:(const AudioUnitParameter *)inParameter value:(Float32)inValue;
00038
00039
00040
@end