LOChannel.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036 #import <Cocoa/Cocoa.h>
00037 #import "LOSoftPatch.h"
00038 #import "LOChannelProvider.h"
00039 #import "LODimmerCurve.h"
00040
00041 @class LOChannelProvider;
00042 @class LOFixture;
00043
00044 #define LOChannelWasReleasedNotification @"LOChannelWasReleasedNotification"
00045
00046
00052 typedef enum {
00053 LOChannelTypeHTP = 0,
00054 LOChannelTypeLTP
00055 } LOChannelType;
00056
00057
00074 @interface LOChannel : NSObject
00075 {
00076 unsigned char channelValue;
00077 LOChannelType channelType;
00078 BOOL isIntensity;
00079 LOSoftPatch *softPatch;
00080 unsigned softPatchOffset;
00081 id<LOChannelProvider> lastProvider;
00082 NSString *name;
00083
00084 LOFixture *fixture;
00085
00086 id<LOChannelProvider> capturedProvider;
00087 NSMutableArray *capturedProviders;
00088
00089 LODimmerCurve *dimmerCurve;
00090 }
00091
00092
00104 - (id)initWithSoftPatch:(LOSoftPatch *)theSoftPatch andSoftPatchOffset:(unsigned)theSoftPatchOffset;
00105
00106
00116 - (id)initWithFixture:(LOFixture *)theFixture;
00117
00118
00145 - (NSXMLElement *)XML;
00146
00147
00156 - (unsigned)channelNumber;
00157
00158
00168 - (unsigned char)channelValue;
00169
00170
00182 - (void)setChannelValue:(unsigned char)theValue byProvider:(id<LOChannelProvider>)theProvider;
00183
00184
00190 - (NSString *)name;
00191
00192
00198 - (void)setName:(NSString *)theName;
00199
00200
00208 - (id<LOChannelProvider>)lastProvider;
00209
00210
00230 - (void)captureChannelForProvider:(id<LOChannelProvider>)theProvider;
00231
00232
00245 - (void)releaseChannelForProvider:(id<LOChannelProvider>)theProvider;
00246
00247
00260 - (void)releaseChannel;
00261
00262
00268 - (BOOL)isCaptured;
00269
00270
00278 - (id<LOChannelProvider>)caputredBy;
00279
00280
00290 - (LOChannelType)channelType;
00291
00292
00302 - (void)setChannelType:(LOChannelType)theChannelType;
00303
00304
00314 - (BOOL)isIntensity;
00315
00316
00326 - (void)setIntensity:(BOOL)intensity;
00327
00328
00338 - (BOOL)isFixture;
00339
00340
00346 - (LOFixture *)fixture;
00347
00348
00354 - (void)setFixture:(LOFixture *)aFixture;
00355
00356
00364 - (LOSoftPatch *)softPatch;
00365
00366
00374 - (unsigned)softPatchOffset;
00375
00376
00382 - (LOHWChannelProxy *)channelProxy;
00383
00384
00390 - (void)patchWithSoftPatch:(LOSoftPatch *)aSoftPatch withOffset:(unsigned)offset;
00391
00392
00400 - (void)unpatch;
00401
00402
00410 - (BOOL)isPatched;
00411
00412
00423 - (LODimmerCurve *)dimmerCurve;
00424
00425
00436 - (void)setDimmerCurve:(LODimmerCurve *)aDimmerCurve;
00437
00438
00450 - (void)addDimmerCurve:(LODimmerCurve *)aDimmerCurve;
00451
00452
00453
00454 @end
00455
00456
00457
00458
00459
00460
00461
00462
00463
00464
00465
00466
00467
00468
00469
00470
00471
00472
00473
00474