00001 00018 #ifndef GLOVETYPES_H 00019 #define GLOVETYPES_H 00020 00021 /* system includes */ 00022 00023 /* my includes */ 00024 /* (none) */ 00025 00026 00027 typedef unsigned char * vector_t; 00028 typedef unsigned char uchar_t; 00029 00030 union timeStamp_t 00031 { 00032 uchar_t raw[5]; 00033 struct{ 00034 uchar_t is_b0_null: 1; 00035 uchar_t is_b1_null: 1; 00036 uchar_t is_b2_null: 1; 00037 uchar_t is_b3_null: 1; 00038 uchar_t _rv0: 4; 00039 00040 uchar_t b0; 00041 uchar_t b1; 00042 uchar_t b2; 00043 uchar_t b3; 00044 }X; 00045 }; 00046 00047 union gloveStatusByte_t 00048 { 00049 uchar_t raw; 00050 struct{ 00051 uchar_t glove_plugged: 1; 00052 uchar_t switch_wrist: 1; 00053 uchar_t light_wrist: 1; 00054 uchar_t _rv0: 5; 00055 }X; 00056 }; 00057 00058 struct sensorMask_t 00059 { 00060 uchar_t raw[3]; 00061 }; 00062 00063 union gloveVersion_t 00064 { 00065 uchar_t raw[4]; 00066 struct{ 00067 uchar_t msb1; 00068 uchar_t lsb1; 00069 uchar_t msb2; 00070 uchar_t lsb2; 00071 }X; 00072 }; 00073 00074 00075 union statusQuery_t 00076 { 00077 timeStamp_t timeStamp; 00078 bool sample; 00079 bool plug; 00080 }; 00081 00082 00083 union statusConnect_t 00084 { 00085 uchar_t raw; 00086 struct{ 00087 uchar_t glove_init: 1; 00088 uchar_t glove_plugged: 1; 00089 uchar_t _rv0: 6; 00090 }X; 00091 }; 00092 00093 union samplePeriod_t 00094 { 00095 uchar_t raw[4]; 00096 struct{ 00097 unsigned short w1; 00098 unsigned short w2; 00099 }X; 00100 }; 00101 00102 union parameterFlags_t 00103 { 00104 uchar_t raw[3]; 00105 struct 00106 { 00107 uchar_t glove_inout: 1; 00108 uchar_t switch_status: 1; 00109 uchar_t light_status: 1; 00110 uchar_t _rv0: 5; 00111 00112 uchar_t binary_sync: 1; 00113 uchar_t ascii_sync: 1; 00114 uchar_t is_glove_byte: 1; 00115 uchar_t control_light: 1; 00116 uchar_t digital_filter: 1; 00117 uchar_t is_time_stamp: 1; 00118 uchar_t glove_hand: 1; 00119 uchar_t glove_valid: 1; 00120 00121 uchar_t send_quant: 1; 00122 uchar_t cyber_option: 1; 00123 uchar_t _rv1: 6; 00124 }X; 00125 }; 00126 00127 00128 00129 #endif /* GLOVETYPES_H */