00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __CH_LocalVariable_h__
00021 #define __CH_LocalVariable_h__
00022
00023 #include "CH_API.h"
00024 #define CH_VARIABLE_NONE 0x0000 //
00025 #define CH_VARIABLE_TIME 0x0001 // $T, $F
00026 #define CH_VARIABLE_VALUE 0x0002 // $IV, $OV
00027 #define CH_VARIABLE_SLOPE 0x0004 // $IM, $OM
00028 #define CH_VARIABLE_ACCEL 0x0008 // $IA, $OA
00029 #define CH_VARIABLE_CHANNEL 0x0010 // another channel
00030 #define CH_VARIABLE_INTVAL 0x0020 // By default, an integer value
00031 #define CH_VARIABLE_STRVAL 0x1000 // By default, a string value
00032 #define CH_VARIABLE_VOIDVAL 0x2000 // By default, a void * value
00033 #define CH_VARIABLE_VECTORVAL 0x4000 // By default, a vector value
00034 #define CH_VARIABLE_MATRIXVAL 0x8000 // By default, a matrix value
00035
00036 class CH_API CH_LocalVariable {
00037 public:
00038 const char *name;
00039 unsigned id;
00040 unsigned flag;
00041
00042 unsigned isTimeDependent() const { return flag & CH_VARIABLE_TIME; }
00043 unsigned isSegmentValue() const { return flag & CH_VARIABLE_VALUE; }
00044 unsigned isSegmentSlope() const { return flag & CH_VARIABLE_SLOPE; }
00045 unsigned isSegmentAccel() const { return flag & CH_VARIABLE_ACCEL; }
00046 };
00047
00048 #endif