VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
aggregateMountedMovementSwitcher.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2021 MAK Technologies, Inc.
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
13 
15 
16 #include <boost/signals2.hpp>
17 
19 class DtString;
21 class DtSimMessage;
23 
24 
36 {
37 public:
38 
42  DtLocalObject* owner,
43  DtSimulationServices* simServices,
44  DtComponentDescriptor* desc = 0,
45  DtReaderWriterRegistry* parentRegistry = 0);
46 
48  virtual ~DtAggregateMountedMovementSwitcher() override;
49 
51  virtual void checkAndSwitchIfEmbarked();
52 
54  virtual void enableSystem(const std::string& systemName, bool bSetEnabled);
55 
57  virtual void hostChanged(const DtUUID& oldUUID, const DtUUID& newUUID);
58 
60  virtual bool init() override;
61 
63  virtual bool isEmbarkedOnAssignedTransport();
64 
66  virtual bool isEmbarkedWithCrew();
67 
70  virtual const char* type() const override;
71 
73  virtual bool postAddComponentsInit() override;
74 
76  virtual void preFirstTickInit() override;
77 
81  virtual void tick() override;
82 
86  static DtSimComponent * creator(const DtString& name,
87  DtLocalObject* owner,
88  DtSimulationServices* simManager,
89  DtComponentDescriptor* desc = 0,
90  DtReaderWriterRegistry* parentRegistry = 0);
91 
92 protected:
93 
94 
97 
100 
103  orig);
104 
106  virtual void disableAllMovementSystems();
107 
108 protected:
109 
110  boost::signals2::scoped_connection myHostChangedConnection;
111 
114 
119 
120 };
UUID is a unique ID wrapper class.
Definition: uuid.h:59
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
virtual bool postAddComponentsInit()
Called after all components have been created, initialized and added to the component manager...
Definition: simComponent.h:126
DtAggregateMountedMovementSwitcherDescriptor * pMySwitcherDescriptor
Pointer to DtAggregateMountedMovementSwitcherDescriptor.
Definition: aggregateMountedMovementSwitcher.h:113
virtual void preFirstTickInit()
This function can be overridden to initialize a component before it is ticked for the first time...
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
bool myCheckAssignedTransport
If this is true, that means the unit is embarked but the assigned transport doesn&#39;t match the host...
Definition: aggregateMountedMovementSwitcher.h:118
virtual bool init()
Calls createPorts and createPortGroups Initializes myLastTickSimTime.
boost::signals2::scoped_connection myHostChangedConnection
Definition: aggregateMountedMovementSwitcher.h:110
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 ...
DtAggregateMountedMovementSwitcher detects changes in embarkation state and disables/enables movement...
Definition: aggregateMountedMovementSwitcher.h:35
DtSimComponent & operator=(const DtSimComponent &orig)
assignment operator, not implemented
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
Contains the DtSimComponent class declaration.
A DtComponentDescriptor for the DtAggregateMountedMovementRelayController component.
Definition: aggregateMountedMovementSwitcherDescriptor.h:16
virtual const char * type() const =0
Returns a string identifies the class type of component. Type values are defined in compTypes...
A locally simulated VRF object.
Definition: localObject.h:98

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)