VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
disaggregatedSetController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2003 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 #pragma once
12 
13 #include "vrfmodel/setController.h"
15 
16 class DtSimMessage;
19 class DtFormationState;
20 class DtSetDataRequest;
22 
29 {
30 public:
31 
35  DtLocalObject* owner,
36  DtSimulationServices* simManager,
37  DtComponentDescriptor* desc = 0,
38  DtReaderWriterRegistry* parentRegistry = 0);
39 
42 
45  virtual const char* type() const;
46 
47  virtual bool init();
48 
49  virtual void tick();
50 
52  static void setForceCallback(DtSimMessage* msg, void* usrData);
53  static void setInvisibleCallback(DtSimMessage* msg, void* usrData);
54  static void setTDLMessagingCallback(DtSimMessage* msg, void* usrData);
55  static void setResourceCallback(DtSimMessage* msg, void* usrData);
56 
57  static void setSuperiorCallback(DtSimMessage* msg, void* usrData);
58 
59  static void setRestoreCallback(DtSimMessage* msg, void* usrData);
60  static void setPostureCallback(DtSimMessage* msg, void* usrData);
61  static void setWeaponStateCallback(DtSimMessage* msg, void* usrData);
62  static void setAiEnabledCallback(DtSimMessage * msg, void * usrData);
63  static void setInvulnerableCallback(DtSimMessage * msg, void * usrData);
64  static void setUndetectableCallback(DtSimMessage * msg, void * usrData);
65 
66  static void setStatePropertiesCallback(DtSimMessage* msg, void* usrData);
67  static void setSORCallback(DtSimMessage* msg, void* usrData);
68  static void setOrderedSpeedCallback(DtSimMessage* msg, void* usrData);
69  static void setCurrentSpeedCallback(DtSimMessage* msg, void* usrData);
70  static void setTargetCallback(DtSimMessage* msg, void* usrData);
71  static void setEngagementRulesCallback(DtSimMessage* msg, void* usrData);
72 
75  static DtSimComponent * creator(const DtString& name,
76  DtLocalObject* owner,
77  DtSimulationServices* simManager,
78  DtComponentDescriptor* desc = 0,
79  DtReaderWriterRegistry* parentRegistry = 0);
80 
81 protected:
82 
83  virtual void processSetResource(DtSimMessage* msg);
84  virtual void processSetForce(DtSimMessage* msg);
85  virtual void processSetInvisible(DtSimMessage* msg);
86  virtual void processSetTDLMessaging(DtSimMessage* msg);
87 
88  virtual void processSetSuperior(DtSimMessage* msg);
89 
90  virtual void processSetRestore(DtSimMessage* msg);
91  virtual void processSetPosture(DtSimMessage* msg);
92  virtual void processSetWeaponState(DtSimMessage* msg);
93  virtual void processSetAiEnabled(DtSimMessage* msg);
94  virtual void processSetInvulnerable(DtSimMessage* msg);
95  virtual void processSetUndetectable(DtSimMessage* msg);
96  virtual void processSetStateProperties(DtSimMessage* msg);
97  virtual void processSetSOR(DtSimMessage* msg);
98  virtual void processSetOrderedSpeed(DtSimMessage* msg);
99  virtual void processCurrentSetSpeed(DtSimMessage* msg);
100  virtual void processSetTarget(DtSimMessage* msg);
101  virtual void processSetEngagementRules(DtSimMessage* msg);
102  virtual void checkReorgDueToForceChange();
103 
105  virtual void initializeSetsToRegister();
106 
110  virtual void forwardToSubordinates(DtSetDataRequestMessage* drMsg, bool bCheckEmbarkation = false);
111 
115 
118 
121 
122 protected:
126 };
127 
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
Definition: formationState.h:41
virtual bool init()
Calls setRadio()
const DtSetController & operator=(const DtSetController &orig)
assignment operator; not implemented
DtPseudoAggregateSetController is the controller that handles all of the DtSetDataRequest messages fo...
Definition: disaggregatedSetController.h:28
virtual const char * type() const =0
This returns a string from compTypes.h, and identifies the type of component.
DtCompatibilityRadio * myCommandChannelRadio
Definition: disaggregatedSetController.h:123
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
DtSetDataRequest is an abstract base class from which real setDataRequests can derive. It manages the read/write capability; derived classes need only use and register read/writatble data types for derived information.
Definition: setDataRequest.h:41
File: simMsg.h.
Definition: simMessage.h:35
virtual void tick()
This gives the thread of control to the component. The component is ticked once each simulation from ...
int myCheckReorgDueToForceChange
Definition: disaggregatedSetController.h:125
This class will define a basic set controller that will allow for adding sets of that can be register...
Definition: setController.h:21
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:94
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:91
DtAggregateLocalObjectFacade myAggregateLocalObjectFacade
Definition: disaggregatedSetController.h:124
Definition: vrfAggregateStateRepository.h:21
A DtSetDataRequestMessage is a DtRadioMsg with a pointer to a setDataRequest. The type of the DtSetDa...
Definition: setDataRequestMessage.h:29
DtCompatibilityRadio.
Definition: compatibilityRadio.h:30
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86
void processSetOrderedSpeed(DtSetDataRequest *set, const DtVertexList &vertices, double position, DtMoveAlongRouteTimeEstimator *est)

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)