12 #include <matrix/vlVector.h>
13 #include <matrix/vlTaitBryan.h>
14 #include "vrfOM/sets/readSensorFieldOfViewRepository.hpp"
15 #include "vrfOM/sets/writeSensorFieldOfViewRepository.hpp"
57 const double zoomLevel()
const;
58 void setZoomLevel(
const double&);
60 const double maximumZoomLevel()
const;
61 void setMaximumZoomLevel(
const double&);
63 const unsigned int color()
const;
64 void setColor(
const unsigned int&);
66 const DtUUID host()
const;
68 const DtString fovId()
const;
69 void setFovId(
const DtString&);
71 const DtVector relativeLocation()
const;
72 void setRelativeLocation(
const DtVector&);
74 const DtUUID& targetedEntity()
const;
75 void setTargetedEntity(
const DtUUID&);
77 const DtVector targetedLocation()
const;
78 void setTargetedLocation(
const DtVector&);
80 const DtTaitBryan relativeOrientation()
const;
81 void setRelativeOrientation(
const DtTaitBryan&);
83 const unsigned int trackingMode()
const;
84 void setTrackingMode(
const unsigned int&);
86 const double radius()
const;
87 void setRadius(
const double&);
89 const double xHalfAngle()
const;
90 void setXHalfAngle(
const double&);
92 const double yHalfAngle()
const;
93 void setYHalfAngle(
const double&);
95 const double minimumAzimuthAngle()
const;
96 void setMinimumAzimuthAngle(
const double&);
98 const double maximumAzimuthAngle()
const;
99 void setMaximumAzimuthAngle(
const double&);
101 const double minimumElevationAngle()
const;
102 void setMinimumElevationAngle(
const double&);
104 const double maximumElevationAngle()
const;
105 void setMaximumElevationAngle(
const double&);
108 virtual void makeWritable();
111 virtual void makeReadOnly();
126 const double zoomLevel()
const;
127 const double maximumZoomLevel()
const;
128 const unsigned int color()
const;
129 const DtUUID host()
const;
131 const DtVector relativeLocation()
const;
132 const DtUUID& targetedEntity()
const;
133 const DtVector targetedLocation()
const;
134 const DtTaitBryan relativeOrientation()
const;
135 const unsigned int trackingMode()
const;
136 const double radius()
const;
137 const double xHalfAngle()
const;
138 const double yHalfAngle()
const;
139 const double minimumAzimuthAngle()
const;
140 const double maximumAzimuthAngle()
const;
141 const double minimumElevationAngle()
const;
142 const double maximumElevationAngle()
const;
144 bool readComponentValid()
const;
145 bool findReadComponent();
148 virtual void handleDataUpdated();
154 VRF::ReadSensorFieldOfViewRepository myReadSensorFieldOfViewRepository;
174 myCurrentFrameState.setTargetedEntity(myNextFrameState.targetedEntity());
175 myCurrentFrameState.emitComponentUpdated();
180 myCurrentFrameState.updateStateData(sd);
181 myNextFrameState.updateStateData(sd);
187 myCurrentFrameState.aboutToBeDeleted();
188 myNextFrameState.aboutToBeDeleted();
191 virtual void firstFrameAdvance()
override;
192 virtual bool forceAdvance()
override;
UUID is a unique ID wrapper class.
Definition: rwUUID.h:229
DtStateData * myStateData
Definition: sensorFieldOfViewStateComponent.h:116
DtSensorFieldOfViewStateComponentCurrentFrame myCurrentFrameState
Definition: sensorFieldOfViewStateComponent.h:195
virtual DtFrameStateInterface * nextFrameState()
Definition: sensorFieldOfViewStateComponent.h:169
Definition: stateComponent.h:257
bool isDoubleBuffered()
Definition: sensorFieldOfViewStateComponent.h:167
#define UNDEFINED_RETURNVALUE_ACCESSOR(ReturnType, Member)
Definition: doubleBufferedDataStorage.h:31
void updateStateData(DtStateData *sd)
Implement to update data storage to the new state data.
Definition: sensorFieldOfViewStateComponent.h:178
Contains the DtUUID class declaration.
3) Define the current frame class. This will be used for read access.
Definition: sensorFieldOfViewStateComponent.h:120
1) Define the interface class that will be used to represent the next and curent frames. The UNDEFINED_ macros are convenience macros that will define methods that throw exceptions (until they are implemented)
Definition: sensorFieldOfViewStateComponent.h:21
2) Define the next frame class. This will be used for write access.
Definition: sensorFieldOfViewStateComponent.h:51
Definition: stateComponent.h:84
void updateDataStorage()
Implement to update data storage. Called from advanceFrame.
Definition: sensorFieldOfViewStateComponent.h:172
const DtFrameStateInterface * currentFrameState() const
Definition: sensorFieldOfViewStateComponent.h:168
The overall structure of the DtStateData mechanism is: The DtStateData contains a list of double buff...
Definition: stateData.h:336
#define DEFINE_STATE_COMPONENT_TYPE(CreatedComponent)
Definition: stateComponent.h:219
virtual void aboutToBeDeleted() override
Definition: sensorFieldOfViewStateComponent.h:184
DtSensorFieldOfViewStateComponentNextFrame myNextFrameState
Definition: sensorFieldOfViewStateComponent.h:196
Subclass from this to indicate that this will be a double buffered state component.
Definition: stateComponent.h:370
#define UNDEFINED_RETURNVALUE_ACCESSOR_MUTATOR(Type, Member, Set)
Definition: doubleBufferedDataStorage.h:53
virtual void aboutToBeDeleted()
void setTargetedEntity(const DtUUID &u)
Definition: sensorFieldOfViewStateComponent.h:151
DtStateComponentCreator< DtSensorFieldOfViewStateComponentImplementation > DtSensorFieldOfViewStateComponentCreator
5) Define the creator. This will need to be registered with the REGISTER_STATE_COMPONENT macro in the...
Definition: sensorFieldOfViewStateComponent.h:202
VRF::WriteSensorFieldOfViewRepository myWriteSensorFieldOfViewRepository
Definition: sensorFieldOfViewStateComponent.h:114
4) Define the state component that will contain the wrappers to the next and current frame states tha...
Definition: sensorFieldOfViewStateComponent.h:162
#define UNDEFINED_RETURNREF_ACCESSOR_MUTATOR(Type, Member, Set)
Definition: doubleBufferedDataStorage.h:57
DtUUID myTargetedEntity
Definition: sensorFieldOfViewStateComponent.h:115
int myCallbackHandle
Definition: sensorFieldOfViewStateComponent.h:157
virtual const DtFrameStateInterface * nextFrameState() const
Definition: sensorFieldOfViewStateComponent.h:170
#define DT_DLL_vrfStateData
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfStateDataDefines.h:26
DtStateData * myStateData
Definition: sensorFieldOfViewStateComponent.h:156
bool myFoundComponent
Definition: sensorFieldOfViewStateComponent.h:197
Contains the DtStateComponent class declaration.
This is a simple base class that will be used to return a pointer to current or next frame state...
Definition: stateComponent.h:282
DtUUID myTargetedEntity
Definition: sensorFieldOfViewStateComponent.h:155