14 #include <vl/environmentProcessRepository.h>
18 #include <vlpi/appearance.h>
23 class Dt3dBoundingVolume;
30 class DtEnvironmentalBoundingSphereRecord;
31 class DtEnvironmentalRectangularVolumeRecord;
33 class DtGlobalObjectDesignatorList;
63 class DtEnvironmentalPointRecord;
90 virtual const char* networkData()
const;
91 virtual const char* setNetworkData(
const DtNetEnvironmentalRecord*);
94 virtual int netRepSize()
const;
95 virtual void setFromNet(
const DtNetEnvironmentalRecord& buffer,
int protocolVersion);
98 virtual bool createNetworkRepresentation();
99 virtual bool resizeNetRep(
int newSize);
125 virtual bool readFromRecord(
const DtNetEnvironmentalRecord*);
152 DtEntityType
entityType()
const {
return environmentType(); };
162 virtual void generateUniqueId();
164 virtual void setUniqueId(
const DtVrlUuid& uniqueId);
166 virtual const DtVrlUuid& uniqueId()
const;
168 const std::vector<DtVector>& vertexList()
const;
173 virtual void updateExtensions();
181 virtual int compareToMostRecent();
185 virtual bool locationsDifferent(
bool updateIfDifferent);
186 virtual void emptyVertexList();
191 static void initializePuffFactory();
193 static DtIttSourceData* createPuffRecord(DtNetEnvironmentalRecord* geometric,
194 DtNetEnvironmentalRecord*
source);
195 static DtIttSourceData* createPuffRecord(DtNetEnvironmentalRecord* rec);
197 virtual void getBoundingVolume(
DtVector& location,
double& radius)
const;
199 const DtGeometricDataList& geometricRecords()
const;
200 bool geometricRecordsChanged()
const;
201 void clearGeometricRecordsChanged();
205 virtual void updateDataRecords();
208 virtual int numberOfSubordinates()
const;
210 virtual const DtGlobalObjectDesignatorList& subordinates()
const;
211 virtual DtGlobalObjectDesignatorList& subordinates();
219 virtual double orientation()
const;
223 virtual void setVertices(
const DtList& pnt);
224 virtual void appendVertex(
const DtVector&);
225 virtual void setVertex(
int i,
const DtVector&);
226 virtual void removeVertex(
int i);
232 virtual DtForceType forceType()
const;
233 virtual void setForceType(DtForceType i);
236 virtual int color()
const;
237 virtual void setColor(
int);
240 virtual const DtString& parent()
const;
241 virtual void setParent(
const DtString&);
243 virtual const DtString& userData()
const;
244 virtual void setUserData(
const DtString&);
246 virtual void setVrfObjectName(
const DtString&);
247 virtual const DtString& vrfObjectName();
249 virtual DtAppearance appearance()
const;
250 virtual void setAppearance(
const DtAppearance& app);
252 virtual void setNumberOfSubordinates(
int);
264 virtual void clearHostGlobalId();
274 virtual bool getFontInformation(
DtString& font,
int& fontSize)
const;
275 virtual void setFontInformation(
const DtString&,
int fontSize);
278 virtual bool getFontColor(
unsigned int& color)
const;
279 virtual void setFontColor(
unsigned int color);
281 virtual bool getArrowInformation(
int& arrowHeadPlacement,
int& arrowStyle,
int& arrowSize)
const;
282 virtual void setArrowInformation(
int arrowHeadPlacement,
int arrowStyle,
int arrowSize);
294 virtual void setBoundingSphereRadius(
double);
295 virtual double boundingSphereRadius()
const;
299 virtual void setBoundingSphereLocation(
const DtVector&);
300 virtual const DtVector& boundingSphereLocation()
const;
302 bool hasBoundingSphereRecord()
const;
312 bool hasBoundingRectRecord()
const;
314 virtual void setBoundingExtent(
const DtVector&);
315 const DtVector& boundingExtent()
const;
317 virtual void setBoundingCornerLocation(
const DtVector&);
318 virtual const DtVector& boundingCornerLocation()
const;
320 virtual void setBoundingOrientation(
const DtTaitBryan&);
321 const DtTaitBryan& boundingOrientation()
const;
325 virtual void setProjected(
bool);
326 virtual bool projected()
const;
328 virtual void setClosedFigure(
bool);
329 virtual bool closedFigure()
const;
331 virtual void setBound2D(
bool);
332 virtual bool bound2D()
const;
335 virtual void setFillStyle(
int);
336 virtual int fillStyle()
const;
338 virtual void setLineStyle(
int);
339 virtual int lineStyle()
const;
341 virtual void setLineWidth(
int);
342 virtual int lineWidth()
const;
345 virtual void setPhysicalLineHeight(
double);
346 virtual double physicalLineHeight()
const;
349 virtual void setPhysicalLineWidth(
double);
350 virtual double physicalLineWidth()
const;
354 virtual void setRelativeLocation(
const DtVector&);
355 virtual const DtVector& relativeLocation()
const;
359 virtual void setVelocity(
const DtVector&);
360 virtual const DtVector& velocity()
const;
362 virtual void setAcceleration(
const DtVector&);
363 virtual const DtVector& acceleration()
const;
365 virtual void setDRAlogrithm(DtDeadReckonTypes);
366 virtual const DtDeadReckonTypes& drAlgorithm()
const;
369 virtual void setOffsetPoints(
const std::vector<DtVector>&);
370 virtual const std::vector<DtVector>& offsetPoints()
const;
375 virtual void setCachePoints(
bool);
376 bool cachePoints()
const;
384 return myExtendedRecordData;
389 return myExtendedRecordData;
392 int numberOfDatumRecords()
const;
393 void setNumberOfDatumRecords(
int);
398 virtual void setSendVrfObjectDataRecord(
bool shouldSend);
399 virtual bool shouldSendVrfObjectDataRecord()
const;
405 virtual void addUuidRecord();
412 virtual bool createExtendedEnvironmentalStateRecord();
422 virtual bool createVrfObjectStateRecord();
431 virtual bool createBoundingSphereRecord();
436 virtual DtEnvironmentalBoundingSphereRecord* boundingSphereRecord();
440 virtual bool createBoundingRectRecord();
445 virtual DtEnvironmentalRectangularVolumeRecord* boundingRectRecord();
448 virtual void setupKindFromType(
const DtEntityType& type);
450 virtual void clearGeometricRecords();
Definition: controlObjectBaseRepository.h:41
Definition: controlObjectBaseRepository.h:56
Definition: controlObjectBaseRepository.h:52
Definition: controlObjectBaseRepository.h:128
DtEnvironmentalProcessExtendedRecordData myExtendedRecordData
Definition: controlObjectBaseRepository.h:488
const DtGeometricDataList & geometricRecords() const
Definition: controlObjectBaseRepository.h:493
Definition: controlObjectBaseRepository.h:59
Definition: ittEnvironmentalProcessData.h:18
Definition: controlObjectBaseRepository.h:54
Definition: vrfExtensions.h:22
const char * myData
Definition: controlObjectBaseRepository.h:103
Environmental process version of this class.
Definition: controlObjectBaseRepository.h:109
bool myNeedVrfObjectDataUpdate
Definition: controlObjectBaseRepository.h:483
DtVrfExtensions & operator=(const DtVrfExtensions &orig)
Definition: controlObjectBaseRepository.h:57
Definition: vrfExtendedRecordData.h:18
bool cachePoints() const
Definition: controlObjectBaseRepository.h:518
int myDataSize
Definition: controlObjectBaseRepository.h:102
bool hasBoundingRectRecord() const
Routines that are used to set/get information about the bounding rectangle. If this information is se...
Definition: controlObjectBaseRepository.h:513
Definition: controlObjectBaseRepository.h:40
Definition: controlObjectBaseRepository.h:58
bool myGeometricRecordsChanged
Definition: controlObjectBaseRepository.h:482
std::map< int, DtIttSourceDataCreator > DtIttSourceDataMap
Definition: controlObjectBaseRepository.h:133
DtVrlUuid myUuid
Definition: controlObjectBaseRepository.h:477
const DtVrfExtendedRecordData & extendedRecordData() const
Definition: controlObjectBaseRepository.h:382
DtCOVertexList myVertexList
Keeps a list of all geometry point records to use to update internal model datas from.
Definition: controlObjectBaseRepository.h:463
Definition: controlObjectBaseRepository.h:48
Definition: controlObjectBaseRepository.h:38
std::vector< DtVector > DtCOVertexList
Definition: controlObjectBaseRepository.h:131
Definition: controlObjectBaseRepository.h:43
DtGeometricDataList myGeometricRecords
Definition: controlObjectBaseRepository.h:481
Definition: ittEnvironmentalProcessRecords.h:17
std::vector< DtIttEnvironmentalProcessData * > DtGeometricDataList
Definition: controlObjectBaseRepository.h:132
virtual const std::map< DtString, DtString > & extendedData() const
Gets/sets extended data.
Definition: controlObjectBaseRepository.h:39
Contains the DtVrfExtensions class declaration.
DtControlObjectBaseRepository * myLastCopy
Definition: controlObjectBaseRepository.h:473
Definition: controlObjectBaseRepository.h:51
DtEnvironmentalRectangularVolumeRecord * myBoundingRectRecord
Definition: controlObjectBaseRepository.h:474
Definition: controlObjectBaseRepository.h:53
DtEnvironmentalBoundingSphereRecord * myBoundingSphereRecord
Definition: controlObjectBaseRepository.h:471
Definition: controlObjectBaseRepository.h:55
void clearGeometricRecordsChanged()
Definition: controlObjectBaseRepository.h:503
static DtIttSourceDataMap thePuffFactory
This information is needed for ITT puff clouds.
Definition: controlObjectBaseRepository.h:480
const char * source
Definition: lz4.h:442
DtEntityType objectType() const
Definition: controlObjectBaseRepository.h:153
Network representation class for extended environmental data.
Definition: controlObjectBaseRepository.h:68
Wraps a DtIfVrfObjectData message into this structure so it can be sent as an environmental record...
Definition: vrfObjectDataEnvironmentalRecord.h:25
Definition: controlObjectBaseRepository.h:42
Definition: simEnvironmentalModelType.h:20
DtVrfExtendedRecordData & extendedRecordData()
Definition: controlObjectBaseRepository.h:387
virtual void extensionModified()
DtControlObjectKind
Definition: controlObjectBaseRepository.h:35
DT_DLL_VRVCORE double length(const makVrv::DtCoordinateSystem &, const std::vector< DtVector > &vertices)
Returns the total distance of a segmented line defined by the provided vector of vertices. Coordinates are in local database coordinates. The coordinate system is used to convert between the local database coordinates and geocentric. All distance is in 2D – the Z value is ignored.
bool hasBoundingSphereRecord() const
Definition: controlObjectBaseRepository.h:508
DtVrfObjectAttachMode
Definition: vrfObjectAttachEnums.h:8
bool myGeneratedUuid
Definition: controlObjectBaseRepository.h:476
Definition: simEnvironmentalObjectStateRecord.h:143
Contains Extended DI-Guy Object net types.
DtIttSourceData *(* DtIttSourceDataCreator)(DtNetEnvironmentalRecord *)
Definition: ittEnvironmentalProcessData.h:132
int myPointsSet
Definition: controlObjectBaseRepository.h:486
DtControlObjectCategory myCategory
Definition: controlObjectBaseRepository.h:459
Definition: controlObjectBaseRepository.h:60
DtEntityType entityType() const
Definition: controlObjectBaseRepository.h:152
bool myCachePoints
Definition: controlObjectBaseRepository.h:485
DtControlObjectKind myKind
Definition: controlObjectBaseRepository.h:458
Definition: controlObjectBaseRepository.h:50
Definition: controlObjectBaseRepository.h:49
bool geometricRecordsChanged() const
Definition: controlObjectBaseRepository.h:498
DtSimEnvironmentalObjectStateRecord * myExtEnvStateRecord
DtSimEnvironmentalObjectStateRecord is a special form of DtEnvironmentalRecord, used to decode custom...
Definition: controlObjectBaseRepository.h:470
DtVrfObjectDataEnvironmentalRecord * myVrfObjectStateRecord
Definition: controlObjectBaseRepository.h:472
bool mySendVrfObjectDataRec
Definition: controlObjectBaseRepository.h:490
Definition: controlObjectBaseRepository.h:37
#define DT_DLL_vrfExtObjects
Definition: dllExport.h:23
virtual void setExtendedData(const std::map< DtString, DtString > &)
Gets/sets extended data.
DtControlObjectCategory
Definition: controlObjectBaseRepository.h:46