LOFixtureRange.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
00038 @class LOFixture;
00039 @class LOFixtureChannel;
00040
00041 typedef enum LOFixtureRangeType
00042 {
00043 LOFixtureRangeTypeBlock = 0,
00044 LOFixtureRangeTypeProportional,
00045 LOFixtureRangeTypeSingle
00046 } LOFixtureRangeType;
00047
00048
00049 typedef enum LOFixtureRangeDirection
00050 {
00051 LOFixtureRangeDirectionPositive = 0,
00052 LOFixtureRangeDirectionNegative
00053 } LOFixtureRangeDirection;
00054
00055
00061 @interface LOFixtureRange : NSObject
00062 {
00063 LOFixtureRangeType type;
00064 LOFixtureChannel *channel;
00065
00066 unsigned char start,end;
00067 NSString *startName;
00068 NSString *endName;
00069 }
00070
00071
00077 - (id)initWithType:(LOFixtureRangeType)aType;
00078
00079
00085 - (id)initWithXML:(NSXMLElement *)XMLElement withinFixture:(LOFixture *)theFixture;
00086
00087
00097 - (NSXMLElement *)XML;
00098
00099
00107 - (LOFixtureRangeType)type;
00108
00109
00117 - (void)setType:(LOFixtureRangeType)theType;
00118
00119
00127 - (LOFixtureChannel *)channel;
00128
00129
00137 - (void)setChannel:(LOFixtureChannel *)theChannel;
00138
00139
00147 - (unsigned char)start;
00148
00149
00157 - (void)setStart:(unsigned char)newStart;
00158
00159
00167 - (unsigned char)end;
00168
00169
00177 - (void)setEnd:(unsigned char)newEnd;
00178
00179
00187 - (NSString *)startName;
00188
00189
00197 - (void)setStartName:(NSString *)newStartName;
00198
00199
00207 - (NSString *)endName;
00208
00209
00217 - (void)setEndName:(NSString *)newEndName;
00218
00219
00228 - (LOFixtureRangeDirection)direction;
00229
00230
00239 - (unsigned)stepCount;
00240
00241
00249 - (BOOL)overlaps:(LOFixtureRange *)theRange;
00250
00251
00265 - (void)updateRangeOutput;
00266
00267
00281 - (void)updateRangeOutputAtOffset:(unsigned char)offset;
00282
00283
00298 - (void)updateRageOutputInProportionTo:(unsigned char)level;
00299
00300
00301 @end
00302
00303
00304
00305
00306
00307
00308
00309
00310
00311
00312
00313
00314
00315
00316
00317
00318
00319
00320
00321
00322
00323
00324
00325