VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
aggregatedSetController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 
12 #pragma once
13 
15 #include "vrfobjcore/simRadio.h"
17 #include "vrftasks/simTask.h"
19 
21 class DtFormation;
22 class DtAggregatedResolutionPSR;
25 
32 {
33 
34 public:
35 
39  DtLocalObject* owner,
40  DtSimulationServices* simManager,
41  DtComponentDescriptor* desc = 0,
42  DtReaderWriterRegistry* parentRegistry = 0);
43 
45  virtual ~DtAggregatedSetController() override;
46 
47  virtual void processSetTrueAggregateTaskNotify(const DtSimTask & task);
48 
51  virtual void enable() override;
52 
53  virtual bool postAddComponentsInit() override;
54 
55  virtual void preFirstTickInit() override;
56 
57 public:
58 
64  static void setEngagementResultsCallback(DtSimMessage * msg, void * usr);
65 
66  static void setTrueAggregateTaskNotifyCallback(
67  const DtSimTask & task, const DtSimComponent &notifier, void* usr);
68 
74  static void setFormationCallback(DtSimMessage * msg, void * usr);
75 
81  static void setResupplyModeCallback(DtSimMessage * msg, void * usr);
82 
88  static void setInvulnerableCallback(DtSimMessage* msg, void * usrData);
89 
95  static void setUndetectableCallback(DtSimMessage* msg, void * usrData);
96 
100  static DtSimComponent * creator(const DtString& name,
101  DtLocalObject* owner,
102  DtSimulationServices* simManager,
103  DtComponentDescriptor* desc = 0,
104  DtReaderWriterRegistry* parentRegistry = 0);
105 
107  virtual void tick() override;
108 
109  virtual void setIsEnabled(bool yesNo) override;
110 
111 private:
115 
118 
120  const DtAggregatedSetController & operator=(const
122 
123 
124 protected:
125 
129  virtual void processSetFormation(DtSimMessage * msg);
130 
134  virtual void processSetEngagementResults(DtSimMessage * msg);
135 
139  virtual void processSetResupplyMode(DtSimMessage * msg);
140 
144  virtual void processSetStateProperties(DtSimMessage* msg) override;
145 
149  virtual void processSetInvulnerable(DtSimMessage * msg);
150 
154  virtual void processSetUndetectable(DtSimMessage* msg) override;
155 
156  virtual bool getFormation(const DtString& formationName,
157  const DtAggregateObjectParameters& parameterEntry, DtFormation& formation);
158 
159  virtual void updateBoundingGeometry();
160 
162  virtual void initializeSetsToRegister() override;
163 
165  virtual void setRadio(DtSimRadio* radio) override;
166 
167 protected:
168 
170 
175 };
176 
177 
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
Contains the DtLocalEntitySetController class declaration.
virtual bool postAddComponentsInit() override
Calls enableTaskTypes()
Definition: simRadio.h:30
static DtSimComponent * creator(const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0)
Definition: rwProperty.h:329
virtual void setIsEnabled(bool yesNo)
Is this component enabled or not. If enabled, component's tick function will be called, otherwise it will not. Default is true (enabled).
virtual void preFirstTickInit()
This function can be overridden to initialize a component before it is ticked for the first time...
virtual void processSetStateProperties(DtSimMessage *msg)
Handler for setStatePropertiesCallback().
static void setUndetectableCallback(DtSimMessage *msg, void *usrData)
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:49
Definition: readerWriterRegistry.h:39
Instances of DtFormation are a list of DtFormationEntry objects which make up an aggregate formation...
Definition: formation.h:22
DtRwPropertyBoolean * myInvulnerable
Definition: aggregatedSetController.h:172
DtAggregatedSetController is a controller that handles new DtSetTrueAggregateMode. It replaces the existing DtControllerComponent.
Definition: aggregatedSetController.h:31
File: simMsg.h.
Definition: simMessage.h:35
const DtSimTask * mySimTask
Definition: aggregatedSetController.h:169
virtual void enable() override
Enables the component and resends capable tasks and sets.
virtual void setRadio(DtSimRadio *radio) override
Override to add set data callbacks.
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:96
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:89
DtSimTask is an abstract base class from which real tasks can derive. It manages the read/write capab...
Definition: simTask.h:30
DtRwPropertyBoolean * myAutonomousActionsEnabled
Definition: aggregatedSetController.h:173
Definition: vrfAggregateStateRepository.h:21
Contains the set of readable/writeable parameters associated with a pseudo-aggregate entities...
Definition: aggregateObjectParameters.h:29
virtual void processSetUndetectable(DtSimMessage *msg)
const DtLocalEntitySetController & operator=(const DtLocalEntitySetController &orig)
assignment operator
virtual void tick() override
Checks the #myPendingSetLocationRequest and if the terrain is available the location in #myPendingSet...
virtual void initializeSetsToRegister()
Sets up the myRegisterSets map with sets to register for this controller.
DtAggregateLocalObjectFacade myAggregateLocalObjectFacade
Definition: aggregatedSetController.h:171
A locally simulated VRF object.
Definition: localObject.h:98
DtLocalEntitySetController is a controller that handles all DtSetDataRequest messages for an entity a...
Definition: localEntitySetController.h:26
DtRwPropertyBoolean * myUndetectable
Definition: aggregatedSetController.h:174

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)