VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
turretSlewController.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 #include <vlpi/disEnums.h>
17 
18 class DtString;
24 
25 
44 {
45 
46 public:
47 
50  DtTurretSlewController(const DtString& name,
51  DtLocalObject* owner,
52  DtSimulationServices* simManager,
53  DtComponentDescriptor* desc = 0,
54  DtReaderWriterRegistry* parentRegistry = 0);
55 
57  virtual ~DtTurretSlewController();
58 
59  virtual bool init();
60 
63  virtual const char* type() const = 0;
64 
68  virtual void tick();
69 
74  virtual double approximateSlew(double angle);
75 
76  virtual void setMaxSlewRate(DtReal maxSlewRate);
77  virtual DtReal maxSlewRate() const;
78 
79 //TODO virtual void setTurretToControl(DtArtPartType turretToControl);
81  virtual DtArtPartType turretToControl() const;
82 
85  virtual double turretBodyRotation() const;
86 
89  virtual bool createSlewPort();
90 
95  virtual DtConstrainedAnalogOutputPort * slewPort();
96 
97 protected:
98 
100  virtual bool createPorts();
101 
109  virtual void lookupAndCacheProcessSR();
110 
111 protected:
112 
115 
118 
121  orig);
122 
123 protected:
124 
127 
135 
137 
144 };
145 
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
const DtControllerComponent & operator=(const DtControllerComponent &orig)
assignment operator
Instances of DtBooleanOutputPort are output ports through which data producers can send boolean data...
Definition: boolIOPort.h:45
virtual const char * type() const =0
This returns a string from compTypes.h, and identifies the type of component.
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:49
DtConstrainedAnalogOutputPort * mySlewPort
Output Port Name: slew Output Port Description: Slew rate. 1.0 indicates maximum left slew...
Definition: turretSlewController.h:134
Definition: readerWriterRegistry.h:39
virtual bool init()
Calls setRadio()
DtConstrainedAnalogOutputPort is a version of DtAnalogOutputPort which will constrain any outgoing va...
Definition: constrainedAnalogIOPort.h:57
File: turBalGunPSR.h.
Definition: vrfTurretedBalGunPSR.h:26
DT_DLL_vrfutil double angle(double vec1[3], double vec2[3])
virtual void tick()
This gives the thread of control to the component. The component is ticked once each simulation from ...
DtVrfTurretedBalGunPSR * myProcessState
Pointer to a process state repository used to store state data associated with this component...
Definition: turretSlewController.h:143
DtTurretSlewController is a controller that has those capabilities common to all controllers that man...
Definition: turretSlewController.h:43
virtual bool createPorts()
Called by init. Derived classes should override this method to create all their input/output ports an...
End User Description: DtControllerComponent is the base class for all controllers components...
Definition: controllerComponent.h:31
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:90
Instances of DtIntegerOutputPort are output ports through which data producers can send integer value...
Definition: integerIOPort.h:45
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)