VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
groundLeadFormationController.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2022 MAK Technologies, Inc.
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
21 
23 class DtVectorOutputPort;
24 
32 {
33 public:
34 
38  DtSimulationServices* simManager, DtComponentDescriptor* desc = 0, DtReaderWriterRegistry* parentRegistry = 0 );
39 
41  virtual ~DtGroundLeadFormationControllerComponent() override;
42 
45  virtual const char* type() const override;
46 
48  virtual void endFollowInFormation(bool taskSuccess = true) override;
49 
51  virtual void registerTaskMsgCallbacks() override;
52 
55  virtual void clearTask() override;
56 
58  static void followInFormationCallback(DtSimMessage * msg, void * usr);
59 
66  virtual void doMoving() override;
67 
71  static DtSimComponent * creator(const DtString& name,
72  DtLocalObject* owner,
73  DtSimulationServices* simManager,
74  DtComponentDescriptor* desc = 0,
75  DtReaderWriterRegistry* parentRegistry = 0);
76 
78  virtual bool isLeaderCapable() const override;
79 
82  virtual bool checkTaskEndCondition() override;
83 
84 protected:
86  virtual void processFollowInFormation(const DtTaskMessage& msg) override;
87 
92  virtual DtVector shiftLocationAlongRoute(double shiftDistance,
93  std::vector<DtVector> testRoute, DtVector initalLoc, int segmentIndex);
94 
96  virtual double headingTo(DtVector localDestination);
97 
99  virtual void updateTaskVisualizations() override;
100 
101 private:
102 
105 
108 
111 
112 protected:
113 
118 
119 };
(deprecated 5.2 see DtGroundManeuverInFormationControllerComponent) DtGroundLeadFormationControllerCo...
Definition: groundLeadFormationController.h:31
virtual void updateTaskVisualizations() override
Visualizes myTargetLocation.
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
static void followInFormationCallback(DtSimMessage *msg, void *usr)
Calls processFollowInFormation.
File: lclVecIter.h.
Definition: localVectorIterator.h:25
virtual bool checkTaskEndCondition()
End the task and releases the throttle when at end of route.
virtual void endFollowInFormation(bool taskSuccess=true)
Calls endFollowInFormation and taskComplete.
DtGroundFollowInFormationControllerComponent & operator=(const DtGroundFollowInFormationControllerComponent &orig)
assignment operator
DtSimObjectReferenceList myFollowers
Definition: groundLeadFormationController.h:114
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
virtual void clearTask() override
Calls endFollowInFormation and parent clearTask.
double myFormationWidth
Definition: groundLeadFormationController.h:116
virtual const char * type() const override
Returns a string identifies the class type of component. Type values are defined in compTypes...
(deprecated 5.2 see DtGroundManeuverInFormationControllerComponent) DtGroundFollowInFormationControll...
Definition: groundFollowInFormationController.h:32
static DtSimComponent * creator(const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0)
DtSimObjectReference myMainRoute
Definition: groundLeadFormationController.h:115
Instances of DtVectorOutputPort are output ports through which data producers can send a DtVector...
Definition: vectorIOPort.h:52
File: simMsg.h.
Definition: simMessage.h:35
virtual bool isLeaderCapable() const
True if the leader is still present and not destroyed or immobilized.
virtual void processFollowInFormation(const DtTaskMessage &msg)
Processes task msg. Stores task parameters.
virtual void doMoving()
Main movement logic. Moves forward along the route never backwards. If the target position is back al...
This is a convenience list that will add DtSimObjectReference objects and modify the list as objects ...
Definition: simObjectReferenceList.h:25
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
double myFormationLength
Definition: groundLeadFormationController.h:117
A DtTaskMsg is a DtRadioMsg with a pointer to a task. The type of the taskMsg is just the type of the...
Definition: taskMessage.h:21
virtual void registerTaskMsgCallbacks() override
Overrides this so it can register it&#39;s interest in DtFollowInFormationTaskType.
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)