VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
groundPatrolBetweenController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2025 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 #pragma once
12 
13 
15 
16 #include <vlutil/vlString.h>
17 
19 class DtSimMessage;
21 
22 
32 {
33 
34 public:
38  DtComponentDescriptor* desc = 0, DtReaderWriterRegistry* parentRegistry = 0);
39 
40  virtual ~DtGroundPatrolBetweenController() override;
41 
43  virtual bool init() override;
44 
47  virtual const char* type() const override;
48 
51  virtual void registerTaskMsgCallbacks() override;
52 
53  static void patrolBetweenCallback(DtSimMessage* msg, void* usr, DtSimTaskStatePtr taskStatePtr);
54 
55  virtual void preFirstTickInit() override;
56 
57  virtual void tick() override;
58 
60  virtual DtSimTaskStatePtr currentTaskState() const override;
61 
65  static void taskCompleteReportCallback(DtSimMessage* msg, void* usr);
66 
70  static DtSimComponent* creator(const DtString& name, DtLocalObject* owner, DtSimulationServices* simManager,
71  DtComponentDescriptor* desc = 0, DtReaderWriterRegistry* parentRegistry = 0);
72 
73 protected:
74  virtual void processPatrolBetween(const DtTaskMessage& msg, DtSimTaskStatePtr taskStatePtr);
75 
78  virtual void onTaskComplete(DtSimMessage* msg);
79 
82  virtual bool moveTo(const DtUUID& controlPoint);
83 
89  virtual bool createPSR();
90 
91 private:
94 
97 
98 protected:
102 
103 };
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
DtAggregatePatrolBetweenPSR * myProcessState
Container for state data associated with this component. This state is saved and restored as part of ...
Definition: groundPatrolBetweenController.h:101
virtual const char * type() const override=0
Returns a string identifies the class type of component. Type values are defined in compTypes...
virtual void registerTaskMsgCallbacks()
virtual void preFirstTickInit()
This function can be overridden to initialize a component before it is ticked for the first time...
This class provides a base class for all controllers that are capable of executing a DtSimTask...
Definition: singleTaskControllerComponent.h:22
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
std::shared_ptr< DtSimTaskState > DtSimTaskStatePtr
Definition: taskAndTaskStateDefines.h:18
virtual bool init() override
Calls setRadio()
This is a process state repository for the DtAggregatePatrolBetweenController that stores state of wh...
Definition: aggregatePatrolBetweenPSR.h:23
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 ...
virtual DtSimTaskStatePtr currentTaskState() const
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
DtGroundPatrolBetweenController is a controller that models patrolling between waypoint behavior for ...
Definition: groundPatrolBetweenController.h:31
const DtTaskControllerComponent & operator=(const DtTaskControllerComponent &orig)
assignment operator
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
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)