00001 #ifndef RawData_h_seen
00002 #define RawData_h_seen
00003
00004 namespace gov {
00005 namespace cca {
00006
00021 class RawData : public virtual Port {
00022 public:
00023
00026 virtual const char* getName() = 0;
00027
00030 virtual int getNumberOfBuffers() = 0;
00031
00041 virtual void getBufferInfo(int bufferIndex, const char* & elementName,
00042 enum RawDataType & elementType,
00043 int & elementCount, void* & buffer) = 0;
00044
00046 virtual unsigned long sizeofDataType(enum RawDataType) = 0;
00047
00049 enum Type {
00050 Err = 0,
00051 Byte = 1,
00052 Bool = 2,
00053 Char = 3,
00054 WChar = 4,
00055 Int1 = 5,
00056 Int2 = 6,
00057 Int4 = 7,
00058 Int8 = 8,
00059 UInt1 = 9,
00060 UInt2 = 10,
00061 UInt4 = 11,
00062 UInt8 = 12,
00063 Float4 = 13,
00064 Float8 = 14,
00065 Float16 = 15,
00066 Complex4 = 16,
00067 Complex8 = 17,
00068 Complex16 = 18,
00069 Complex32 = 19,
00070 PtrByte = 65,
00071 PtrBool = 66,
00072 PtrChar = 67,
00073 PtrWChar = 68,
00074 PtrInt1 = 69,
00075 PtrInt2 = 70,
00076 PtrInt4 = 71,
00077 PtrInt8 = 72,
00078 PtrUInt1 = 73,
00079 PtrUInt2 = 74,
00080 PtrUInt4 = 75,
00081 PtrUInt8 = 76,
00082 PtrFloat4 = 77,
00083 PtrFloat8 = 78,
00084 PtrFloat16 = 79,
00085 PtrComplex4 = 80,
00086 PtrComplex8 = 81,
00087 PtrComplex16 = 82,
00088 PtrComplex32 = 83,
00089 PtrRawData = 84
00090 };
00091
00092 };
00093 } ENDSEMI
00094 } ENDSEMI
00095
00096 #endif // RawData_h_seen