Dependencies:   mbed QEI

Committer:
nucho
Date:
Mon Aug 01 14:46:08 2011 +0000
Revision:
1:7f0fc0d1f777
Parent:
0:3c49891bc39d

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nucho 0:3c49891bc39d 1 /*******************************************
nucho 0:3c49891bc39d 2 * BasicDataType.h
nucho 0:3c49891bc39d 3 * @author Yuki Suga
nucho 0:3c49891bc39d 4 * @copyright Yuki Suga (ysuga.net) Nov, 10th, 2010.
nucho 0:3c49891bc39d 5 * @license LGPLv3
nucho 0:3c49891bc39d 6 *****************************************/
nucho 0:3c49891bc39d 7
nucho 0:3c49891bc39d 8 #ifndef BASIC_DATA_TYPE_HEADER_INCLUDED
nucho 0:3c49891bc39d 9 #define BASIC_DATA_TYPE_HEADER_INCLUDED
nucho 0:3c49891bc39d 10
nucho 0:3c49891bc39d 11 #include "SequenceDataType.h"
nucho 0:3c49891bc39d 12 #include "SequenceOctet.h"
nucho 0:3c49891bc39d 13 #include "SequenceChar.h"
nucho 0:3c49891bc39d 14 #include "SequenceBoolean.h"
nucho 0:3c49891bc39d 15 #include "SequenceLong.h"
nucho 0:3c49891bc39d 16 #include "SequenceDouble.h"
nucho 0:3c49891bc39d 17 #include "SequenceFloat.h"
nucho 0:3c49891bc39d 18 /*
nucho 0:3c49891bc39d 19 typedef struct __Time__ {
nucho 0:3c49891bc39d 20 long sec;
nucho 0:3c49891bc39d 21 long usec;
nucho 0:3c49891bc39d 22 }Time;
nucho 0:3c49891bc39d 23 */
nucho 0:3c49891bc39d 24
nucho 0:3c49891bc39d 25 class TimedData {
nucho 0:3c49891bc39d 26 public:
nucho 0:3c49891bc39d 27 virtual void* GetBuffer() {
nucho 0:3c49891bc39d 28 return 0;
nucho 0:3c49891bc39d 29 }
nucho 0:3c49891bc39d 30 };
nucho 0:3c49891bc39d 31
nucho 0:3c49891bc39d 32 class TimedBoolean : public TimedData {
nucho 0:3c49891bc39d 33 public:
nucho 0:3c49891bc39d 34 char data;
nucho 0:3c49891bc39d 35 virtual void* GetBuffer() {
nucho 0:3c49891bc39d 36 return &data;
nucho 0:3c49891bc39d 37 }
nucho 0:3c49891bc39d 38 const static char typecode = 'b';
nucho 0:3c49891bc39d 39 };
nucho 0:3c49891bc39d 40
nucho 0:3c49891bc39d 41 class TimedChar : public TimedData {
nucho 0:3c49891bc39d 42 public:
nucho 0:3c49891bc39d 43 char data;
nucho 0:3c49891bc39d 44 virtual void* GetBuffer() {
nucho 0:3c49891bc39d 45 return &data;
nucho 0:3c49891bc39d 46 }
nucho 0:3c49891bc39d 47 const static char typecode = 'c';
nucho 0:3c49891bc39d 48 };
nucho 0:3c49891bc39d 49
nucho 0:3c49891bc39d 50 class TimedOctet : public TimedData {
nucho 0:3c49891bc39d 51 public:
nucho 0:3c49891bc39d 52 char data;
nucho 0:3c49891bc39d 53 virtual void* GetBuffer() {
nucho 0:3c49891bc39d 54 return &data;
nucho 0:3c49891bc39d 55 }
nucho 0:3c49891bc39d 56 const static char typecode = 'o';
nucho 0:3c49891bc39d 57 };
nucho 0:3c49891bc39d 58
nucho 0:3c49891bc39d 59 class TimedLong : public TimedData {
nucho 0:3c49891bc39d 60 // Time timestamp;
nucho 0:3c49891bc39d 61 public:
nucho 0:3c49891bc39d 62 long data;
nucho 0:3c49891bc39d 63 virtual void* GetBuffer() {
nucho 0:3c49891bc39d 64 return &data;
nucho 0:3c49891bc39d 65 }
nucho 0:3c49891bc39d 66 const static char typecode = 'l';
nucho 0:3c49891bc39d 67 };
nucho 0:3c49891bc39d 68
nucho 0:3c49891bc39d 69 class TimedDouble : public TimedData {
nucho 0:3c49891bc39d 70 // Time timestamp;
nucho 0:3c49891bc39d 71 public:
nucho 1:7f0fc0d1f777 72 //double data;
nucho 1:7f0fc0d1f777 73 float data;
nucho 0:3c49891bc39d 74 virtual void* GetBuffer() {
nucho 0:3c49891bc39d 75 return &data;
nucho 0:3c49891bc39d 76 }
nucho 0:3c49891bc39d 77 const static char typecode = 'd';
nucho 0:3c49891bc39d 78 };
nucho 0:3c49891bc39d 79
nucho 0:3c49891bc39d 80 class TimedFloat : public TimedData {
nucho 0:3c49891bc39d 81 // unsigned char length;
nucho 0:3c49891bc39d 82 public:
nucho 0:3c49891bc39d 83 float data;
nucho 0:3c49891bc39d 84 virtual void* GetBuffer() {
nucho 0:3c49891bc39d 85 return &data;
nucho 0:3c49891bc39d 86 }
nucho 0:3c49891bc39d 87 const static char typecode = 'f';
nucho 0:3c49891bc39d 88 };
nucho 0:3c49891bc39d 89
nucho 0:3c49891bc39d 90 class TimedDataSeq {
nucho 0:3c49891bc39d 91 public:
nucho 0:3c49891bc39d 92 virtual SequenceDataType* GetBuffer() {
nucho 0:3c49891bc39d 93 return 0;
nucho 0:3c49891bc39d 94 }
nucho 0:3c49891bc39d 95 };
nucho 0:3c49891bc39d 96
nucho 0:3c49891bc39d 97 class TimedOctetSeq : public TimedDataSeq {
nucho 0:3c49891bc39d 98 // Time timestamp;
nucho 0:3c49891bc39d 99 // long length;
nucho 0:3c49891bc39d 100 public:
nucho 0:3c49891bc39d 101 SequenceOctet data;
nucho 0:3c49891bc39d 102 virtual SequenceDataType* GetBuffer() {
nucho 0:3c49891bc39d 103 return &data;
nucho 0:3c49891bc39d 104 }
nucho 0:3c49891bc39d 105 const static char typecode = 'O';
nucho 0:3c49891bc39d 106 };
nucho 0:3c49891bc39d 107
nucho 0:3c49891bc39d 108 class TimedCharSeq : public TimedDataSeq {
nucho 0:3c49891bc39d 109 // Time timestamp;
nucho 0:3c49891bc39d 110 // long length;
nucho 0:3c49891bc39d 111 public:
nucho 0:3c49891bc39d 112 SequenceChar data;
nucho 0:3c49891bc39d 113 virtual SequenceDataType* GetBuffer() {
nucho 0:3c49891bc39d 114 return &data;
nucho 0:3c49891bc39d 115 }
nucho 0:3c49891bc39d 116 const static char typecode = 'C';
nucho 0:3c49891bc39d 117 };
nucho 0:3c49891bc39d 118
nucho 0:3c49891bc39d 119 class TimedBooleanSeq : public TimedDataSeq {
nucho 0:3c49891bc39d 120 // Time timestamp;
nucho 0:3c49891bc39d 121 // long length;
nucho 0:3c49891bc39d 122 public:
nucho 0:3c49891bc39d 123 SequenceBoolean data;
nucho 0:3c49891bc39d 124 virtual SequenceDataType* GetBuffer() {
nucho 0:3c49891bc39d 125 return &data;
nucho 0:3c49891bc39d 126 }
nucho 0:3c49891bc39d 127 const static char typecode = 'B';
nucho 0:3c49891bc39d 128 };
nucho 0:3c49891bc39d 129
nucho 0:3c49891bc39d 130 class TimedLongSeq : public TimedDataSeq {
nucho 0:3c49891bc39d 131 // Time timestamp;
nucho 0:3c49891bc39d 132 // long length;
nucho 0:3c49891bc39d 133 public:
nucho 0:3c49891bc39d 134 SequenceLong data;
nucho 0:3c49891bc39d 135 virtual SequenceDataType* GetBuffer() {
nucho 0:3c49891bc39d 136 return &data;
nucho 0:3c49891bc39d 137 }
nucho 0:3c49891bc39d 138 const static char typecode = 'L';
nucho 0:3c49891bc39d 139 };
nucho 0:3c49891bc39d 140
nucho 0:3c49891bc39d 141 class TimedFloatSeq : public TimedDataSeq {
nucho 0:3c49891bc39d 142 // Time timestamp;
nucho 0:3c49891bc39d 143 // long length;
nucho 0:3c49891bc39d 144 // float* data;
nucho 0:3c49891bc39d 145 public:
nucho 0:3c49891bc39d 146 SequenceFloat data;
nucho 0:3c49891bc39d 147 virtual SequenceDataType* GetBuffer() {
nucho 0:3c49891bc39d 148 return &data;
nucho 0:3c49891bc39d 149 }
nucho 0:3c49891bc39d 150 const static char typecode = 'F';
nucho 0:3c49891bc39d 151 };
nucho 0:3c49891bc39d 152
nucho 0:3c49891bc39d 153 struct TimedDoubleSeq : public TimedDataSeq {
nucho 0:3c49891bc39d 154 // Time timestamp;
nucho 0:3c49891bc39d 155 // long length;
nucho 0:3c49891bc39d 156 // double* data;
nucho 0:3c49891bc39d 157 public:
nucho 0:3c49891bc39d 158 SequenceDouble data;
nucho 0:3c49891bc39d 159 virtual SequenceDataType* GetBuffer() {
nucho 0:3c49891bc39d 160 return &data;
nucho 0:3c49891bc39d 161 }
nucho 0:3c49891bc39d 162 const static char typecode = 'D';
nucho 0:3c49891bc39d 163 };
nucho 0:3c49891bc39d 164
nucho 0:3c49891bc39d 165
nucho 0:3c49891bc39d 166 #endif