VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
genericVariableRecord.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2013 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #pragma once
7 
11 #include <vlpi/disEnums.h>
12 
13 
18 {
19 public:
20 
22  DtGenericVariableRecord(unsigned int recordType, unsigned int dataLength = 0, void* dataPtr = 0);
23 
26 
29  DtGenericVariableRecord(void* ptr, unsigned int size);
30 
32  virtual ~DtGenericVariableRecord();
33 
35  virtual DtGenericVariableRecord& operator=(const DtGenericVariableRecord& record);
36 
38  virtual DtStandardVariableRecord& operator=(const DtStandardVariableRecord& other);
39 
41  virtual bool operator==(const DtGenericVariableRecord& record);
42 
44  virtual bool operator==(const DtStandardVariableRecord& record);
45 
47 
48  virtual unsigned int recordType() const;
49  virtual void setRecordType( unsigned int recordType );
51 
53 
54  virtual unsigned int recordLength() const;
56  virtual void setRecordLength(unsigned int length);
58 
60 
61 
62  virtual const char* variableData() const;
63  virtual char* variableData();
64  virtual void setVariableData(const std::vector<char>& data);
65  virtual void setVariableData(const char* data, unsigned size);
67 
69  virtual unsigned int dataSize() const;
70 
71  // Writes the network representation to the given address.
72  // The assumption is that this memory is allocated and is of the proper size.
73  virtual void writeRecord(void * addr) const;
74 
77  virtual void setFromNet( const void* netRecord, unsigned int length, DtStandardVariableRetCode* retCode = NULL);
78 
80  virtual const char* netRep() const;
81 
83  virtual void printDataToStream(std::ostream& stream) const;
84 
86  virtual unsigned int unpaddedNetsize() const;
87 
89  virtual DtStandardVariableRecord* clone() const;
90 
91 protected:
92 
94  virtual void resizeForDataOfSize(int size);
95 
96 public:
97 
99  static DtStandardVariableRecord* create(void* addr, unsigned int length);
100 
101 protected:
102 
103  std::vector<char> myRecordBuffer;
106 
108  unsigned int myNetSize;
109 };

Document ID: Generated on Mon Jun 22 21:18:40 EDT 2020 from SVN revision 213785
Copyright © 2005-2018 MAK Technologies. All Rights Reserved (www.mak.com)