VR-Link API Documentation for HLA 1516
varDatumRec.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 
00009 
00010 #ifndef DtVariableDatumRecord_H_
00011 #define DtVariableDatumRecord_H_
00012 
00013 #include <vlpi/disEnums.h>
00014 #include <vlpi/datumIdType.h>
00015 #include "packets/dataP.h"
00016 #include <iosfwd>
00017 
00018 
00022 class DT_DLL_VL DtVariableDatumRecord
00023 {
00024 
00025 public:
00026 
00028    DtVariableDatumRecord();
00029 
00031    virtual ~DtVariableDatumRecord();
00032 
00034    DtVariableDatumRecord(const DtVariableDatumRecord& orig);
00035 
00037    DtVariableDatumRecord& operator=(const DtVariableDatumRecord& orig);
00038 
00040    int operator==(const DtVariableDatumRecord& otherguy) const;
00041    int operator!=(const DtVariableDatumRecord& otherguy) const;
00042 
00044    virtual void setExternalBuffer(char* bufferPtr);
00045 
00048    virtual void setDatumBitLength(DtU32 newDatumBitLength);
00049    virtual DtU32 datumBitLength() const;
00050 
00052    virtual int datumByteLength() const;
00053 
00055    virtual void setDatumID(DtDatumParam value);
00056    virtual DtDatumParam datumID() const;
00057 
00060    virtual void setDatumValFloat64(DtFloat64 value);
00061    virtual DtFloat64 datumValFloat64() const;
00062 
00065    virtual void setDatumValFloat32(DtFloat32 value);
00066    virtual DtFloat32 datumValFloat32() const;
00067 
00070    virtual void setDatumValInt32(DtInt32 value);
00071    virtual DtInt32 datumValInt32() const;
00072 
00075    virtual void setDatumValU32(DtU32 value);
00076    virtual DtU32 datumValU32() const;
00077 
00080    virtual void setDatumValInt16(DtInt16 value);
00081    virtual DtInt16 datumValInt16() const;
00082 
00085    virtual void setDatumValU16(DtU16 value);
00086    virtual DtU16 datumValU16() const;
00087 
00090    virtual void setDatumValU8(DtU8 value);
00091    virtual DtU8 datumValU8() const;
00092 
00095    virtual void setDatumValByteArray(const DtU8* setFrom);
00096    virtual void getDatumValByteArray(DtU8* copyTo) const;
00097 
00099    virtual char* datumValPtr();
00100 
00102    virtual const char* constDatumValPtr() const;
00103 
00105    virtual int networkByteLength() const;
00106 
00109    virtual const char* networkDataBuffer() const;
00110 
00112    virtual void printData() const;
00113    virtual void printDataToStream(std::ostream &str) const;
00114 
00115 
00116 protected:
00117 
00119    virtual DtNetVarDatum* netStruct();
00120 
00122    virtual const DtNetVarDatum* constNetStruct() const;
00123 
00125    virtual void deleteIfNoExternal();
00126 
00128    virtual int datumByteSize(int datumBitLength) const;
00129 
00131    virtual int recordByteSize(int datumBitLength) const;
00132 
00133 protected:
00134 
00135    char* myRecordBuffer;
00136    char* myExternalBuffer;
00137 };
00138 
00139 #endif
00140 

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)