VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
mountingElevationActuator.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1999 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
7 
10 
11 #pragma once
12 
15 
16 class DtString;
19 class DtAnalogOutputPort;
20 class DtIntegerOutputPort;
22 
23 namespace makVrf
24 {
25  class DtArticulatedPartStateRepository;
26 }
27 
34 {
35 
36 public:
37 
41  DtLocalObject* owner,
42  DtSimulationServices* simManager,
43  DtComponentDescriptor* desc = 0,
44  DtReaderWriterRegistry* parentRegistry = 0);
45 
47  virtual ~DtMountingElevationActuator() override;
48 
50  virtual bool postAddComponentsInit() override;
51 
54  virtual const char* type() const override;
55 
57  virtual void tick() override;
58 
59  virtual void setMaxElevateRate(DtReal maxElevateRate);
60  virtual DtReal maxElevateRate() const;
61 
62  virtual void setRestingElevation(DtReal elevation);
63  virtual DtReal restingElevation() const;
64 
65  virtual void setMaximumElevation(DtReal elevation);
66  virtual DtReal maximumElevation() const;
67 
68  virtual void setMinimumElevation(DtReal elevation);
69  virtual DtReal minimumElevation() const;
70 
74  static DtSimComponent * creator(const DtString& name,
75  DtLocalObject* owner,
76  DtSimulationServices* simManager,
77  DtComponentDescriptor* desc = 0,
78  DtReaderWriterRegistry* parentRegistry = 0);
79 
83  static double computeDeltaOutsideElevationRange(double minimumElevation,
84  double maximumElevation,
85  double angleUnderTest);
86 
87 protected:
88 
90  virtual bool createPortGroups() override;
91 
93  virtual bool createPorts() override;
94 
95 protected:
96 
99 
102 
106 
107 
108 protected:
109 
112 
119 
123 
130 
137 
144 
151 
158 
160 
162 
167 
169 
172 };
173 
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
virtual bool postAddComponentsInit()
Called after all components have been created, initialized and added to the component manager...
Definition: simComponent.h:126
DtAnalogOutputPort * myMinimumElevationPort
Output Port Name: minimum-elevation Output Port Description: Minimum elevation angle. Output Port Range: Output Port Default Value: Output Group Parent: mounting-info.
Definition: mountingElevationActuator.h:143
DtReal myMaxElevateRate
Definition: mountingElevationActuator.h:163
DtConstrainedAnalogInputPort * myElevationPort
Input Port Name: elevation Input Port Description: Input Port Range: -1. to 1. Input Port Default Va...
Definition: mountingElevationActuator.h:118
const DtActuatorComponent & operator=(const DtActuatorComponent &orig)
assignment operator
DtAnalogOutputPort * myRestingElevationPort
Output Port Name: resting-elevation Output Port Description: Resting elevation value. Should return to this angle when not aiming. Output Port Range: Output Port Default Value: Output Group Parent: mounting-info.
Definition: mountingElevationActuator.h:129
Contains class declarations for DtConstrainedAnalogInputPort and DtConstrainedAnalogOutputPort.
Definition: constrainedAnalogIOPort.h:30
DtReal myMinimumElevation
Definition: mountingElevationActuator.h:166
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
DtIntegerOutputPort * myElevationPartTypePort
Output Port Name: elevation-part-type Output Port Description: Type of articulated part...
Definition: mountingElevationActuator.h:157
DtOutputPortGroup is a data port group of a data provider. It may contain any number of DtOutputPorts...
Definition: outputPortGroup.h:34
DtMountingElevationActuator is a simple model of elevating a mounting point.
Definition: mountingElevationActuator.h:33
End User Description: DtActuator is the base class for all actuator model components. Developer Description: The DtActuator base class caches a pointer to the entity's radio for convenience. Derived classes may have articulated parts that are configured from the DtActuatorComponentDescriptor's DtSimArtPartDescriptorList. For each articulated part in the list a DtArticulatedPartStateRepository will be created to store the data for the part such as it's location, rotation and so forth. These are created in the entity's DtVrfObjectStateRepository createParts() function. This call creates all the attached parts for all the actuators. These articulated state repositories are managed by the DtAttachmentManager. They are cached by their partType which is the DIS Enumeration describing the part from the disEnums.h file and was specified in the actuator's DtActuatorComponentDescriptor as descriped above. The partType is used as the category of the DtEntityType used to look up articulated parts in the DtAttachementManager. When an actuator needs access to a particular articulated part it looks it up by the part's object type.
Definition: actuatorComponent.h:47
Instances of DtAnalogOutputPort are input ports through which data producers can send real numbers...
Definition: analogIOPort.h:45
makVrf::DtArticulatedPartStateRepository * myRotatingBody
Definition: mountingElevationActuator.h:168
DtReal myMaximumElevation
Definition: mountingElevationActuator.h:165
virtual void tick()
This gives the thread of control to the component. The component is ticked once each simulation from ...
DtAnalogOutputPort * myMaximumElevationPort
Output Port Name: maximum-elevation Output Port Description: Maximum elevation angle. Output Port Range: Output Port Default Value: Output Group Parent: mounting-info.
Definition: mountingElevationActuator.h:136
const DtElevationMountComponentDescriptor * myElevationCompDesc
Definition: mountingElevationActuator.h:161
virtual bool createPorts()
Called by init. Derived classes should override this method to create all their input/output ports an...
virtual bool createPortGroups()
Called by init. Derived classes should override this method to create all their input/output port gro...
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
DtPlatformLocalObjectFacade myPlatformLocalObjectFacade
Member to allow for access to platform specific data.
Definition: mountingElevationActuator.h:171
The DtArticulatedPartStateRepository class is used to represent articulated parts for an entity...
Definition: articulatedPartStateRepository.h:40
A DtComponentDescriptor that has additional parameter information for DtMountingElevationActuator act...
Definition: elevationMountComponentDescriptor.h:28
DtReal myRestingElevation
Definition: mountingElevationActuator.h:164
DtOutputPortGroup * myElevationInfoPortGroup
Output Port Group Name: mounting-info Output Port Group Description:
Definition: mountingElevationActuator.h:122
Instances of DtIntegerOutputPort are output ports through which data producers can send integer value...
Definition: integerIOPort.h:45
DtAnalogOutputPort * myMaxElevationRatePort
Output Port Name: elevation-rate Output Port Description: Maximum elevation rate. Output Port Range: ...
Definition: mountingElevationActuator.h:150
virtual const char * type() const =0
Returns a string identifies the class type of component. Type values are defined in compTypes...
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)