VR-Link API Documentation for HLA Evolved
hInterWData.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 
00007 #ifndef hInterWData_H_
00008 #define hInterWData_H_
00009 
00010 #if DtHLA 
00011 
00012 #include "hIntWEncDec.h"
00013 #include "hostStructs.h"
00014 #include "datumRecSet.h"
00015 
00019 
00020 
00021 class DT_DLL_VL DtExerciseConn;
00022 class DT_DLL_VL DtInteractionWithData;
00023 
00028 
00029 class DT_DLL_VL DtInteractionWithData : public DtInteractionWithEncDec
00030 {
00031 public:
00032 
00034    DtInteractionWithData();
00035 
00037    virtual ~DtInteractionWithData();
00038 
00040    DtInteractionWithData(const DtInteractionWithData& orig);
00041 
00043    DtInteractionWithData& operator=(
00044       const DtInteractionWithData& orig);
00045 
00047    virtual void printData() const;
00048 
00050    virtual void printDataToStream(std::ostream& stream) const;
00051 
00052    virtual int numFixedFields() const;
00053 
00055    virtual int numVarFields() const;
00056 
00060    virtual DtDatumParam varDatumId(int index) const;
00061    virtual void setVarDatumId(int index, DtDatumParam id, DtDatumRetCode* retcode = 0);
00062 
00066    virtual DtDatumParam fixedDatumId(int index) const;
00067    virtual void setFixedDatumId(int index, DtDatumParam id, DtDatumRetCode* retcode = 0);
00068 
00073    virtual DtDatumParam datumId(DtDatumRecordType fixedOrVar, int index) const;
00074 
00079    virtual int datumSizeBits(DtDatumRecordType fixedOrVar, int index) const;
00080 
00085    virtual int datumSizeBytes(DtDatumRecordType fixedOrVar, int index) const;
00086 
00093    virtual void getIndex(DtDatumParam param, DtDatumRecordType* fixedOrVar, 
00094       int* index, DtDatumRetCode* retcode = 0) const;
00095 
00108 
00109    virtual DtFloat32 datumValFloat32(DtDatumRecordType fixedOrVar, int index, 
00110       DtDatumRetCode* retcode = 0) const;
00111    virtual DtFloat64 datumValFloat64(DtDatumRecordType fixedOrVar, int index, 
00112       DtDatumRetCode* retcode = 0) const;
00113    virtual unsigned long datumValUnsigned32(DtDatumRecordType fixedOrVar,
00114       int index, DtDatumRetCode* retcode = 0) const;
00115    virtual long datumValInt32(DtDatumRecordType fixedOrVar, int index, 
00116       DtDatumRetCode* retcode = 0) const;   
00117    virtual const char* datumValByteArray(DtDatumRecordType fixedOrVar, 
00118       int index) const;
00119 
00132 
00133    virtual DtFloat32 datumValFloat32(DtDatumParam param, 
00134       DtDatumRetCode* retcode = 0) const;
00135    virtual DtFloat64 datumValFloat64(DtDatumParam param, 
00136       DtDatumRetCode* retcode = 0) const;
00137    virtual unsigned long datumValUnsigned32(DtDatumParam param, 
00138       DtDatumRetCode* retcode = 0) const;
00139    virtual long datumValInt32(DtDatumParam param, 
00140       DtDatumRetCode* retcode = 0) const;
00141    virtual const char* datumValByteArray(DtDatumParam param, 
00142       DtDatumRetCode* retcode = 0) const;
00143 
00145 
00152    virtual void initDataSection(const DtDatumParam* fixedParams,
00153       const DtVarDatumSpec* specList); 
00154 
00159    virtual void setNumFixedFields(int newNum);
00160    virtual void setNumVarFields(int newNum);
00161 
00166    virtual void setDatumParam(DtDatumRecordType fixedOrVar, int index, DtDatumParam param, 
00167       DtDatumRetCode* retcode = 0);
00168 
00174    virtual void setVarDataBytes(int index, int length, DtDatumRetCode* retcode = 0);
00175 
00188 
00189    virtual void setDatumValFloat64(DtDatumRecordType fixedOrVar, int index, DtFloat64 val, 
00190       DtDatumRetCode* retcode = 0); 
00191    virtual void setDatumValFloat32(DtDatumRecordType fixedOrVar, int index, DtFloat32 val, 
00192       DtDatumRetCode* retcode = 0); 
00193    virtual void setDatumValInt32(DtDatumRecordType fixedOrVar, int index, long val, 
00194       DtDatumRetCode* retcode = 0); 
00195    virtual void setDatumValUnsigned32(DtDatumRecordType fixedOrVar, int index, 
00196       unsigned long val, DtDatumRetCode* retcode = 0); 
00197    virtual void setDatumValByteArray(DtDatumRecordType fixedOrVar, int index, 
00198       const char* val, DtDatumRetCode* retcode = 0); 
00199    
00212 
00213    virtual void setDatumValFloat64(DtDatumParam param, DtFloat64 val, 
00214       DtDatumRetCode* retcode = 0); 
00215    virtual void setDatumValFloat32(DtDatumParam param, DtFloat32 val, 
00216       DtDatumRetCode* retcode = 0); 
00217    virtual void setDatumValInt32(DtDatumParam param, long val, 
00218       DtDatumRetCode* retcode = 0); 
00219    virtual void setDatumValUnsigned32(DtDatumParam param, unsigned long val, 
00220       DtDatumRetCode* retcode = 0); 
00221    virtual void setDatumValByteArray(DtDatumParam param, const char* val, 
00222       DtDatumRetCode* retcode = 0); 
00223 
00229    virtual DtDatumRecordSet* datumRecSet(); 
00230    virtual const DtDatumRecordSet* datumRecSet() const;
00231 
00232 protected:
00233 
00234    DtDatumRecordSet myRecSet;   
00235 };
00236 
00237 #endif
00238 #endif
00239 

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)