VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
missileMoveToControllerComponent.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1999 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
14 
16 
17 #include <matrix/vlVector.h>
18 
19 class DtString;
20 class DtSimManager;
21 class DtConstrainedAnalogPort;
22 class boolPort;
23 class DtSimMessage;
24 
25 
36 {
37 public:
38 
42  DtVrfObject* owner,
43  DtSimManager* simManager,
44  DtComponentDescriptor* desc = 0,
45  DtReaderWriterRegistry* parentRegistry = 0);
46 
49 
51  virtual void tick();
52 
55  virtual const char* type() const;
56 
57 
60  virtual void setTargetPoint(const DtVector& targetPoint);
61  virtual const DtVector& targetPoint() const;
62 
64  virtual void setTargetVelocity(const DtVector& arg);
65  virtual const DtVector& targetVelocity() const;
66 
68  virtual void calculateSteering(const DtVector &relativeVelocity,
69  const DtVector &localPosition,
70  const DtVector &targetVelocity,
71  const DtVector &targetPoint,
72  double& maneuverAccelXOut,
73  double& maneuverAccelYOut,
74  double& maneuverAccelZOut);
75 
79  static void targetPointCallback(DtSimMessage * msg, void * usr);
80 
83  virtual void processTargetPointTask(DtSimMessage * msg);
84 
88  static DtSimComponent * creator(const DtString& name,
89  DtVrfObject* owner,
90  DtSimManager* simManager,
91  DtComponentDescriptor* desc = 0,
92  DtReaderWriterRegistry* parentRegistry = 0);
93 
94 protected:
98 
102 
106 
108  virtual void registerTaskMsgCallbacks();
109 
112  virtual bool setupControlPoint();
113 
115  virtual double findDesiredSpeed();
116 
122  virtual void doMoving();
123 
124 };
125 
#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
virtual void registerTaskMsgCallbacks()
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:42
virtual const char * type() const
Returns a string identifies the class type of component.
const DtMissileControllerComponent & operator=(const DtMissileControllerComponent &orig)
assignment operator; not implemented
Definition: readerWriterRegistry.h:39
DtMissileMoveToControllerComponent is a controller that maneuvers a missile toward a given target poi...
Definition: missileMoveToControllerComponent.h:35
virtual void calculateSteering(const DtVector &relativeVelocity, const DtVector &localPosition, const DtVector &targetVelocity, const DtVector &targetPoint, double &maneuverAccelXOut, double &maneuverAccelYOut, double &maneuverAccelZOut)=0
Calculates the maneuvering thrust necessary to aim at the target.
File: simMsg.h.
Definition: simMessage.h:35
virtual void tick()
This gives the thread of control to the component.
DtMissileControllerComponent is a controller that contains all of the functionality common to all mis...
Definition: missileControllerComponent.h:37
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:67
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:103

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)