VR-Link API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
standardVariableRecordSet.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2013 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
8 
9 #pragma once
10 
12 #include <vlutil/vlMachineTypes.h>
13 
14 #include <iostream>
15 #include <memory>
16 
17 #define DtNullDatumParam DtDatumParam(0)
18 #define DtNullVarDatumSpec DtNullDatumParam,0
19 
21 {
22 public:
23 
26 
29 
31  virtual ~DtStandardVariableRecordSet();
32 
34  virtual DtStandardVariableRecordSet& operator=(const DtStandardVariableRecordSet& rhs);
35 
37  virtual unsigned int numberOfRecords() const;
38 
40  virtual void printRecords() const;
41 
43  virtual void printRecordsToStream(std::ostream& stream) const;
44 
46  virtual void addRecord(std::auto_ptr<DtStandardVariableRecord> record);
47 
49  virtual void addRecords(const DtStandardVariableRecordPtrVector& records);
50 
55  virtual void removeRecordByIndex(unsigned int index);
56 
59  virtual int removeRecordByType(unsigned int recordType, bool removeAll = true);
60 
66  virtual DtStandardVariableRecord* recordByIndex(unsigned int index) const;
67 
71  virtual DtStandardVariableRecord* recordByType(unsigned int recordType) const;
72 
75  virtual const DtStandardVariableRecordPtrVector& records() const;
76 
80  virtual DtStandardVariableRecordPtrVector& getRecords(unsigned int recordType,
81  DtStandardVariableRecordPtrVector& recordsOfType) const;
82 
87  virtual DtStandardVariableRecordPtrVector& getRecords(DtStandardVariableRecordPtrVector& records) const;
88 
91  virtual void clearRecords();
92 
96  virtual std::vector<unsigned int> recordTypes() const;
97 
99  virtual unsigned int netSize() const;
100 
101 protected:
102 
104  virtual void removeRecordFromMap(DtStandardVariableRecord* record);
105 
106 public:
107 
109  static const DtStandardVariableRecordPtrVector& emptyRecordVector();
110 
112  static void setMapByType(bool doMap);
113 
115  static bool mapByType();
116 
117 protected:
118 
119  // The Standard Variable Records for this RecordSet
122 
123 protected:
124 
126  static bool theMapByType;
127 
128 };
DtStandardVariableRecordPtrVectorByType myRecordsByType
Definition: standardVariableRecordSet.h:121
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Definition: standardVariableRecordSet.h:20
std::map< unsigned int, DtStandardVariableRecordPtrVector > DtStandardVariableRecordPtrVectorByType
Definition: standardVariableRecord.h:84
static bool theMapByType
Definition: standardVariableRecordSet.h:126
std::vector< DtStandardVariableRecord * > DtStandardVariableRecordPtrVector
Definition: standardVariableRecord.h:82
DtStandardVariableRecordPtrVector myRecordsVector
Definition: standardVariableRecordSet.h:120
Definition: standardVariableRecord.h:22
static const DtStandardVariableRecordPtrVector theEmptyRecordsVector
Definition: standardVariableRecordSet.h:125
This file contains typedefs for machine dependant types.

Document ID: Generated on Tue Feb 2 21:02:17 EST 2021 from SVN revision 223668
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)