MusicKit  0.0.0
SndStreamArchitectureView.h
00001 
00002 //
00003 //  $Id$
00004 //
00005 //  Description:
00006 //    View showing the current layout of Snd streaming components.
00007 //
00008 //  Original Author: SKoT McDonald, <skot@tomandandy.com>
00009 //
00010 //  Copyright (c) 2001, The MusicKit Project.  All rights reserved.
00011 //
00012 //  Permission is granted to use and modify this code for commercial and
00013 //  non-commercial purposes so long as the author attribution and copyright
00014 //  messages remain intact and accompany all relevant code.
00015 //
00017 
00018 #ifndef __SNDKIT_SNDSTREAMARCHITECTUREVIEW_H_
00019 #define __SNDKIT_SNDSTREAMARCHITECTUREVIEW_H_
00020 
00021 #import <Foundation/Foundation.h>
00022 #import <AppKit/AppKit.h>
00023 
00024 @class SndAudioArchViewObject;
00025 @class SndStreamClient;
00026 @class SndAudioProcessorChain;
00027 
00029 
00042 @interface SndStreamArchitectureView : NSView 
00043 {
00045   NSTimer *timer;
00047   NSMutableArray *displayObjectsArray;
00049   NSMutableAttributedString *msg;
00051   id      currentSndArchObject;
00053   NSLock *objectArrayLock;
00055   id      delegate;
00056 }
00057 
00065 - update: (NSTimer *) timer;
00066 
00075 - drawStreamClient: (SndStreamClient *) client inRect: (NSRect) rect;
00076 
00084 - drawMixerInRect: (NSRect) rect;
00085 
00093 - drawStreamManagerInRect: (NSRect) rect;
00094 
00103 - drawAudioProcessorChain: (SndAudioProcessorChain *) apc inRect: (NSRect) rect;
00104 
00111 - drawRect: (NSRect) aRect withColor: (NSColor *) aColor;
00112 
00117 - (void) mouseUp: (NSEvent *) theEvent;
00118 
00124 - (void) setDelegate: (id) delegate;
00125 
00130 - (id) delegate;
00131 
00136 - (id) currentlySelectedAudioArchObject;
00137 
00142 - clearCurrentlySelectedAudioArchObject;
00143 
00144 @end
00145 
00147 // Simple informal delegate protocol
00149 
00152 @protocol SndStreamArchitectureViewDelegateProtocol
00161 - didSelectObject: (id) sndAudioArchDisplayObject;
00162 
00163 @end
00164 
00166 
00167 #endif