76 virtual const char*
type()
const;
84 static void setSpotReportingCallback(
DtSimMessage * msg,
void * usr);
86 virtual void processSetSpotReporting(
DtSimMessage * msg);
91 virtual void setLocalEnabled(
bool on);
100 virtual void setGlobalEnabledOverridingLocal();
104 virtual void resendSpotReports(
unsigned long requestId);
121 virtual void turnSpotReportingOn();
122 virtual void turnSpotReportingOff();
133 virtual bool createPSR();
137 static void objectAboutToBeRemovedCallback(
const DtVrfObject*
object,
void* usr);
138 virtual void processObjectAboutToBeRemoved(
const DtVrfObject*
object);
141 virtual void registerRadioMessageCallbacks();
146 virtual void sendDestroyedReports(
unsigned long resendId,
bool queueMissing =
false);
151 virtual DtSpotReport* createDestroyedReport(
unsigned long resendId,
const DtUUID& entity,
bool& objectIsNoLongerDestroyed);
163 virtual void generateAndSendSpotReports();
172 virtual bool isTypeAndForceForReport(
183 virtual void updateSpotReportForContact(
DtSpotReport& spotReport,
190 virtual void sendSpotReport(
DtSpotReport& spotReport,
bool superiorOnly);
192 std::vector<DtUUID> getSpotReportSuperiorPeers();
195 virtual void sendSpotReports(
const std::vector<DtSimReport*>& spotReports,
bool superiorOnly);
198 virtual void sendStopSpottingReports(
const std::set<DtUUID>& stoppedSpotting);
205 virtual bool spotReportNeedsUpdateAndResend(
const DtSpotReport& spotRep,
210 virtual double heartbeatDeltaFor(
const DtSpotReport& spotRep,
236 virtual void readGlobalEnabledSetting(
const DtBoolSetting* enabledSetting);
241 static void hostilitiesChangedCallback(DtU8 force,
void* usr);
242 virtual void processHostilitiesChanged(DtU8 force);
249 virtual bool reportingEnabled()
const;
254 virtual bool checkSpotReportUpdateConditions(
const DtSpotReport& spotRep,
259 virtual bool checkDeltaDistanceConditions(
const DtSpotReport& spotRep,
263 virtual bool checkDeltaHeartbeatConditions(
const DtSpotReport& spotRep,
273 static void objectAddedCb(
const DtVrfObject*,
void* usr);
274 virtual void processObjectAdded(
const DtVrfObject*);
276 static void requestSpotReportsCallback(
DtSimMessage* msg,
void* usr);
277 virtual void processRequestSpotReports(
DtSimMessage* msg);
280 virtual void processSetRemoteSensorReceiver(
DtSimMessage* msg);
283 static void setRemoteSensorReceiverCallback(
DtSimMessage* msg,
void* usr);
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
const DtSpotReportGeneratorControllerDescriptor * myDescriptor
Pointer to this components descriptor.
Definition: spotReportGeneratorController.h:306
bool myGlobalEnabled
Holds a copy of the global spot reports enabled setting.
Definition: spotReportGeneratorController.h:321
const DtControllerComponent & operator=(const DtControllerComponent &orig)
assignment operator
std::map< DtUUID, std::vector< unsigned long > > MissingDestroyedObjectsMap
Definition: spotReportGeneratorController.h:327
Definition: boolSetting.h:30
DtSpotReportGeneratorControllerDescriptor; descriptor for the DtSpotReportGeneratorController compone...
Definition: spotReportGeneratorControllerDescriptor.h:23
virtual void timedTick()
This version of tick checks to see if the time to tick has arrived.
virtual const char * type() const =0
This returns a string from compTypes.h, and identifies the type of component.
Reason
Definition: spotReport.h:38
Definition: vrfObjectMessageTypeTemplate.h:24
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:42
Definition: readerWriterRegistry.h:39
virtual bool init()
Calls setRadio()
Definition: settingsObject.h:27
Process State Repository for DtSpotReportGeneratorController.
Definition: spotReportGeneratorControllerPSR.h:19
File: simMsg.h.
Definition: simMessage.h:35
double myLastHeartbeatTime
Definition: spotReportGeneratorController.h:323
virtual void tick()
This gives the thread of control to the component.
Instances of DtObjectTypesListOutputPort are output ports through which data producers can send a lis...
Definition: objectTypesListIOPort.h:46
MissingDestroyedObjectsMap myMissingDestroyedObjectsMap
Definition: spotReportGeneratorController.h:328
Define constants for types of tasks, sets, admin messages, reports, and sim commands (all sent via ra...
The base class for all messages to/from a specific DtVrfObject.
Definition: vrfObjectMessage.h:30
virtual bool createPorts()
Called by init.
int myCurrentForceType
Definition: spotReportGeneratorController.h:312
bool myHostilitiesChangeFlag
Flag which gets set to true when hostilities changed, and cleared the following tick.
Definition: spotReportGeneratorController.h:317
End User Description: DtControllerComponent is the base class for all controllers components...
Definition: controllerComponent.h:29
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:67
DtSensorContactInfoListChangeMonitor myContactListMonitor
Definition: spotReportGeneratorController.h:313
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:103
bool myNeedsSpotReportFlush
Definition: spotReportGeneratorController.h:325
DtSpotReportGeneratorControllerPSR * myProcessState
Container for state data associated with this component.
Definition: spotReportGeneratorController.h:310
DtSpotReportGeneratorController is a controller that sends spot reports based on the contact list in ...
Definition: spotReportGeneratorController.h:48
DtSpotReport; subclass of DtSimReport.
Definition: spotReport.h:35
DtSimReport is an abstract base class from which real reports can derive.
Definition: simReport.h:26