VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
disaggregatedPatrolAlongController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2004 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
12 #pragma once
13 
15 
16 class DtFormationState;
18 class DtAggregatePatrolAlongDescriptor;
19 class DtVrfObjectManager;
20 
37 {
38 public:
39 
41  {
42  DtMovingAlongRoute = 0,
43  DtReversingDirection = 1
44  };
45 
49  DtVrfObject* owner,
50  DtSimManager* simManager,
51  DtComponentDescriptor* desc = 0,
52  DtReaderWriterRegistry* parentRegistry = 0);
53 
56 
59  virtual const char* type() const;
60 
63  virtual bool init();
64 
66  virtual void tick();
67 
69  virtual void registerTaskMsgCallbacks();
70 
71  static void patrolAlongCallback(DtSimMessage* msg, void* usr, DtSimTaskStatePtr taskStatePtr);
72 
76 
81  static void taskCompleteReportCallback(DtSimMessage * msg, void * usr);
82 
86  static DtSimComponent * creator(const DtString& name,
87  DtVrfObject* owner,
88  DtSimManager* simManager,
89  DtComponentDescriptor* desc = 0,
90  DtReaderWriterRegistry* parentRegistry = 0);
91 
92 protected:
93  virtual void processPatrolAlong(const DtTaskMessage& msg, DtSimTaskStatePtr taskStatePtr);
94 
99  virtual void onTaskComplete(DtSimMessage * msg);
100 
106  virtual bool createPSR();
107 
115  virtual DtIteratorDirection initialTraversalDirection(
116  const DtUUID& route, const DtVector& initialWorldPosition) const;
117 
126  virtual void sendMoveAlongToSelf(const DtUUID& route,
127  enum DtIteratorDirection traversalDirection, bool startAtClosestPoint);
128 
129 private:
130 
133 
136 
137 protected:
138 
140  const DtAggregatePatrolAlongDescriptor* myAggregatePatrolAlongDescriptor;
141 
144 
148 
150 };
151 
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
Definition: formationState.h:38
DtFormationState * myFormationState
Aggregate's formation state, cached in this class for convenience.
Definition: disaggregatedPatrolAlongController.h:143
virtual void registerTaskMsgCallbacks()
This class provides a base class for all controllers that are capable of executing a DtSimTask...
Definition: singleTaskControllerComponent.h:20
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:42
const DtAggregatePatrolAlongDescriptor * myAggregatePatrolAlongDescriptor
Descriptor used to configure this component.
Definition: disaggregatedPatrolAlongController.h:140
Definition: readerWriterRegistry.h:39
virtual const char * type() const =0
Returns a string identifies the class type of component.
virtual bool init()
Calls setRadio()
DtDisaggregatedPatrolAlongController is a task controller responsible for executing DtPatrolAlongTask...
Definition: disaggregatedPatrolAlongController.h:36
DtBoost::shared_ptr< DtSimTaskState > DtSimTaskStatePtr
Definition: taskAndTaskStateDefines.h:18
DtIteratorDirection
Definition: iteratorBase.h:23
File: simMsg.h.
Definition: simMessage.h:35
virtual void tick()
This gives the thread of control to the component.
DtPatrolAlongState
Definition: disaggregatedPatrolAlongController.h:40
virtual DtSimTaskStatePtr currentTaskState() const
class DtVrfObjectManager:
Definition: vrfObjectManager.h:202
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:67
const DtTaskControllerComponent & operator=(const DtTaskControllerComponent &orig)
assignment operator
This is a process state repository for the DtAggregatePatrolAlongController that stores the list of t...
Definition: aggregatePatrolAlongPSR.h:23
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:103
DtAggregatePatrolAlongPSR * myProcessState
Container for state data associated with this component.
Definition: disaggregatedPatrolAlongController.h:147
bool myFirstTick
Definition: disaggregatedPatrolAlongController.h:149
A DtTaskMsg is a DtRadioMsg with a pointer to a task.
Definition: taskMessage.h:19

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)