VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
extAggregateBaseStateRepository.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2018 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
11 
12 #pragma once
13 
17 #include <vl/aggregateStateRepository.h>
18 #include <vector>
19 
21 {
22 public:
23 
26 
29 
31  virtual void updateDataRecords(DtAggregateStateRepository*);
32 
34  virtual void decodeDataRecords(DtAggregateStateRepository*);
35 
37  virtual bool readFromRecord(DtVariableDatumRecord&);
38 };
39 
41 {
42 
43 public:
44 
47 
50 
53 
57 
59  virtual DtStateRepository* clone(bool copy = false) const;
60 
63  virtual int compare(const DtExtAggregateBaseStateRepository* rhs);
64 
66  virtual int compareToMostRecent();
67 
70  virtual bool locationsDifferent(bool updateIfDifferent);
71 
74  virtual DtString extendedData(const DtString& key) const;
75 
76  const DtEntityType& objectType() const { return entityType(); };
77 
79  {
80  return myExtendedRecordData;
81  }
82 
84  {
85  return myExtendedRecordData;
86  }
87 
89  virtual void generateUniqueId();
91  virtual void setUniqueId(const DtVrlUuid& uniqueId);
93  virtual const DtVrlUuid& uniqueId() const;
94 
97  virtual void addEntity(const DtBaseEntityStateRepository*);
98  virtual void removeEntity(const DtBaseEntityStateRepository*);
99 
100  virtual void addAggregate(const DtBaseEntityStateRepository*);
101  virtual void removeAggregate(const DtBaseEntityStateRepository*);
102 
104  virtual void addSubordinate(const DtEntityIdentifier&);
105  virtual void removeSubordinate(const DtEntityIdentifier&);
106 
108  virtual void setExtendedData(const std::map<DtString, DtString>& ed);
109  virtual void setExtendedData(const DtString& key, const DtString& value);
110 
114  virtual int numVrfVariableDatumRecords() const;
115 
117  virtual bool getUserVariableDatum(int userRecordNumber,
118  DtVariableDatumRecord& rec);
119 
121  virtual bool setUserVariableDatum(int userRecordNumber,
122  const DtVariableDatumRecord& record);
123 
128  virtual void updateDataRecords();
129 
133  virtual void setSendVrfObjectDataRecord(bool shouldSend);
134  virtual bool shouldSendVrfObjectDataRecord() const;
136 
138  int appearance() const;
139  void setAppearance(int);
140 
142  const std::vector<DtEntityIdentifier>& orderedSubordinates() const;
143  virtual void setOrderedSubordinates(const std::vector<DtEntityIdentifier>&);
144 
146 
147  virtual DtString formationName() const;
148  virtual void setFormationName(const DtString& formationName);
150 
152  virtual void updateExtensions();
153 
154  static DtExtAggregateBaseStateRepository* create();
155 
156 protected:
157 
158 #ifdef DtDIS
159  virtual void addUuidRecord();
161 #endif
162 
163  virtual void extensionModified();
164 
165 protected:
168 
170  std::vector<DtEntityIdentifier> myOrderedSubordinates;
171 
176 
178 
180  DtVrlUuid myUuid;
181 };
182 
184 {
185  return myAppearance;
186 }
187 
189 {
190  if (i != myAppearance)
191  {
192  myRecordModified = true;
193  myAppearance = i;
194  }
195 }
196 
197 inline const std::vector<DtEntityIdentifier>& DtExtAggregateBaseStateRepository::orderedSubordinates() const
198 {
199  return myOrderedSubordinates;
200 }
DtString myFormationName
Definition: extAggregateBaseStateRepository.h:175
int myBitLength
Definition: extAggregateBaseStateRepository.h:173
Definition: vrfExtensions.h:22
std::vector< DtEntityIdentifier > myOrderedSubordinates
Definition: extAggregateBaseStateRepository.h:170
DtVrfExtensions & operator=(const DtVrfExtensions &orig)
DtVrfExtendedRecordData & extendedRecordData()
Definition: extAggregateBaseStateRepository.h:83
const DtEntityType & objectType() const
Definition: extAggregateBaseStateRepository.h:76
Definition: vrfExtendedRecordData.h:18
const DtVrfExtendedRecordData & extendedRecordData() const
Definition: extAggregateBaseStateRepository.h:78
bool myRecordModified
Definition: extAggregateBaseStateRepository.h:174
const std::vector< DtEntityIdentifier > & orderedSubordinates() const
Gets/sets the list of subordinates in subordinate order.
Definition: extAggregateBaseStateRepository.h:197
DtAggregateExtendedRecordData myExtendedRecordData
Definition: extAggregateBaseStateRepository.h:167
Definition: extAggregateBaseStateRepository.h:20
virtual const std::map< DtString, DtString > & extendedData() const
Gets/sets extended data.
Contains the DtVrfExtensions class declaration.
char * mySubordinateBuffer
Definition: extAggregateBaseStateRepository.h:172
int appearance() const
Appearance as read from network or set by user.
Definition: extAggregateBaseStateRepository.h:183
int myAppearance
Definition: extAggregateBaseStateRepository.h:169
DtExtAggregateBaseStateRepository * myLastCopy
Definition: extAggregateBaseStateRepository.h:166
virtual void extensionModified()
bool mySendVrfObjectDataRec
Definition: extAggregateBaseStateRepository.h:177
DtVrlUuid myUuid
Definition: extAggregateBaseStateRepository.h:180
void setAppearance(int)
Definition: extAggregateBaseStateRepository.h:188
#define DT_DLL_vrfExtObjects
Definition: dllExport.h:23
Definition: extAggregateBaseStateRepository.h:40
virtual void setExtendedData(const std::map< DtString, DtString > &)
Gets/sets extended data.
bool myGeneratedUuid
Definition: extAggregateBaseStateRepository.h:179

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)