VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions
DtWeaponControllerDescriptor Class Reference

DtWeaponControllerDescriptor; descriptor for the DtWeaponController component. More...

Inheritance diagram for DtWeaponControllerDescriptor:
Inheritance graph
[legend]

Public Member Functions

 DtWeaponControllerDescriptor (const DtString &name, DtReaderWriterRegistry *parentRegistry=0)
 constructor
 DtWeaponControllerDescriptor (const DtWeaponControllerDescriptor &orig, DtReaderWriterRegistry *parentRegistry=0)
 copy constructor
DtWeaponControllerDescriptoroperator= (const DtWeaponControllerDescriptor &orig)
 assignment
virtual ~DtWeaponControllerDescriptor ()
 destructor
virtual DtString type () const
 Returns the type of component this descriptor describes.
virtual DtComponentDescriptorclone (DtReaderWriterRegistry *parentRegistry=0) const
virtual void postGetSelf ()
 Updates ammo select and targeting control variables from the targeting control table if that is specified such that controllers that use this descriptor do not have to change their code for updating.
virtual const DtAmmoSelectTableammoSelectTable () const
 Accessor/mutator for myAmmoSelectTable.
virtual void setAmmoSelectTable (const DtAmmoSelectTable &table)
virtual void setAmmoSelectTableFilename (const DtString &filename)
 Accessor/mutator for myAmmoSelectTableFile.
virtual const DtStringammoSelectTableFilename ()
virtual const DtStringrangeName () const
 Accessor/mutator for myRangeName.
virtual void setRangeName (const DtString &rangeName)
virtual DtTargetSelectionCriteriatargetSelectionCriteria ()
 Accessor/mutator for myTargetSelectionCriteria.
virtual const
DtTargetSelectionCriteria
targetSelectionCriteria () const
virtual const
DtTargetingControlTable
targetingControlTable () const
 Accessor for myTargetingControlTable.
virtual DtTargetingControlTabletargetingControlTable ()
- Public Member Functions inherited from DtBaseWeaponControllerDescriptor
 DtBaseWeaponControllerDescriptor (const DtString &name, DtReaderWriterRegistry *parentRegistry=NULL)
 constructor
 DtBaseWeaponControllerDescriptor (const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL)
 DtBaseWeaponControllerDescriptor (const DtBaseWeaponControllerDescriptor &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 copy constructor
DtBaseWeaponControllerDescriptoroperator= (const DtBaseWeaponControllerDescriptor &orig)
 assignment
virtual ~DtBaseWeaponControllerDescriptor ()
 destructor
virtual bool preloadWeapon () const
 Accessor/mutator for myDoWeaponPreload.
virtual void setPreloadWeapon (bool preloadWeapon)
virtual DtReal maxVehicleSpeedToFire () const
 Accessor/mutator for myFireMaxVehicleSpeed.
virtual void setMaxVehicleSpeedToFire (DtReal maxVehicleSpeedToFire)
virtual DtReal maxAzimuthAngleOffBoresight () const
 Accessor/mutator for myMaxAzimuthAngleOffBoresight.
virtual void setMaxAzimuthAngleOffBoresight (DtReal maxAngle)
virtual DtReal maxElevationAngleOffBoresight () const
 Accessor/mutator for myMaxElevationAngleOffBoresight.
virtual void setMaxElevationAngleOffBoresight (DtReal maxAngle)
virtual DtTime loadAmmoTime () const
 Accessor/mutator for myLoadAmmoTime.
virtual void setLoadAmmoTime (DtTime loadTime)
virtual DtTime unloadAmmoTime () const
 Accessor/mutator for myUnloadAmmoTime.
virtual void setUnloadAmmoTime (DtTime unloadTime)
virtual bool disabledBySuppression () const
 Accessor/mutator for myDisabledBySuppression.
virtual void setDisabledBySuppression (const bool isDisabled)
- Public Member Functions inherited from DtComponentDescriptor
 DtComponentDescriptor (const DtComponentDescriptor &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 copy constructor
DtComponentDescriptoroperator= (const DtComponentDescriptor &orig)
 assignment
virtual ~DtComponentDescriptor ()
virtual void putData (std::string &fp, int indentLevel=0)
 Overrides base class putData to output our type.
virtual DtlObjPtr getData (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
 getData is just used to get us past the type in the data stream, since it's not actually stored.
virtual bool init ()
 Base class init does nothing, but will be called by createComponentDescriptor(), allowing derived classes to do memory allocation if necessary.
bool operator== (const DtComponentDescriptor &) const
 DtComponentDescriptor (const DtString &componentName, DtReaderWriterRegistry *parentRegistry=NULL)
 DtComponentDescriptor (const DtSymbolString &componentName, DtReaderWriterRegistry *parentRegistry=NULL)
virtual void setComponentType (const DtString &componentType)
 Type of DtSimComponent this descriptor is associated with.
virtual const DtStringcomponentType () const
virtual void setMinTickPeriod (DtReal minTickPeriod)
virtual DtReal minTickPeriod () const
virtual void setMinTickPeriodVariance (DtReal minTickPeriodVariance)
virtual DtReal minTickPeriodVariance () const
virtual void setTickPeriodUsesRealTime (bool value)
 Accessor/mutator for myTickPeriodUsesRealTime.
virtual bool tickPeriodUsesRealTime () const
virtual const DtStringprocessStateRepositoryName () const
 Name which this component will assign to its PSR.
virtual void setProcessStateRepositoryName (const DtString &name)
virtual const DtStringprocessStateRepositoryType () const
 Type of PSR this component will create.
virtual void setProcessStateRepositoryType (const DtString &type)
virtual void setIsEnabled (bool yesNo)
 Is the component enabled or not.
virtual bool isEnabled () const
virtual void setDebugActive (bool active)
 Should detailed debug info be printed for this component.
virtual bool debugActive () const
virtual void setMinTaskVisualizationTickPeriod (DtReal minTickPeriod)
virtual DtReal minTaskVisualizationTickPeriod () const
virtual void setTaskVisualizationsEnabled (bool enabled)
virtual bool taskVisualizationsEnabled () const
virtual void setCreateComponent (bool yesNo)
 Should the component be created or not.
virtual bool createComponent () const
virtual void setCreateOnRemoteObject (bool yesNo)
 Whether or not this component is created on remote versions of the object.
virtual bool createOnRemoteObject () const
- Public Member Functions inherited from DtReaderWriter
 DtReaderWriter ()
 default constructor
 DtReaderWriter (const DtString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false)
 real constructor Setting the readonly flag prevents object from writing itself to the stream.
 DtReaderWriter (const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false)
 DtReaderWriter (const DtString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 pseudo-copy constructor
 DtReaderWriter (const DtSymbolString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 DtReaderWriter (const DtReaderWriter &, DtReaderWriterRegistry *parentRegistry=NULL)
 copy constructor
const DtReaderWriteroperator= (const DtReaderWriter &orig)
 assignment operator
bool operator== (const DtReaderWriter &) const
 Equivalence operator.
bool operator!= (const DtReaderWriter &rhs)
virtual ~DtReaderWriter ()
 destructor
virtual void putSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
 Top level call to write itself to file.
virtual void postPutSelf ()
 Called after either version of put self (file or environment). Default is no-op.
virtual void prePutSelf ()
 Called before either version of put self (file or environment). Default is no-op.
virtual void getSelf (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
 Top level to read itself from an input stream.
virtual void preGetSelf ()
 Called before either version of get self (file or environment). Default is no-op.
virtual void writeSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
 Called from putSelf, calls myRegistry.putSelf which in turn calls putSelf on each reader/writer in the registry.
virtual DtSymbolString name () const
 Accessor for name of this readable/writable object.
virtual void addAlias (const DtSymbolString &alias)
 Add an alias as an alternative name for this object.
virtual void addAlias (const DtString &alias)
virtual bool hasAlias (const DtSymbolString &alias)
virtual const aliasContaineraliases () const
virtual void setReadonly (bool flag)
 Set read-only flag.
bool isReadonly () const
virtual void reset ()
 For those reader/writer items that support it, resets the reader/writer value to original state Default is no-op.
virtual int alignment () const
 For those items that are sent over the network via HLA, this will give the network alignment.
virtual bool variableIsBound () const
virtual void unbindVariable ()
 Sets the myVariableIsBound flag to false.
virtual void setName (const DtString &)
 Set the name of the object.
virtual const charreaderWriterType () const
 Used to supply a string type that this reader writer type is.
virtual const charxmlType () const
virtual DtString prettyPrint () const
 Routine to return a human readable form of the reader/writer variable.
std::string debugText () const
virtual void bindVariables (DtVariableBindingsList variableBindings)
 Runs a variable binding pass on this reader writer and any of its children.
virtual std::list
< DtVariableNameType
unboundVariables () const
bool invalid () const
virtual bool hasChild (const DtReaderWriter *p) const
 Returns true if this variable has a child p in it's chain.
virtual bool hasVariableReference () const
 Returns true if this item or any item in the registry (recursive) is a variable reference.
virtual void bindLocalVariables (const DtVariableBindingsList &variableBindings)
 Checks to see if this RW object is a variable reference that can be bound using the provided bindings.
virtual void recordUpdateTime () const
 Can be implemented in subclasses to stamp the time when updated.
virtual bool wasUpdatedSince (DtTime t) const
 Can be implemented in subclasses to return true if an update occurred after the specified time.
virtual bool changedSinceLastChecked ()
 Returns true if this objects value has changed since the last time this function was called.
virtual bool peekChangedSinceLastChecked () const
 Returns the value that changedSinceLastChecked would return but does not reset the internal flag.
virtual void setValueSpecified (bool specified, bool recurse=false)
 The specified flags are used for optional values.
virtual bool valueSpecified () const
virtual bool isVariableReference () const
 Specifies whether or not this reader writer is really a variable that is specified elsewhere.
virtual void setIsVariableReference (bool value)
virtual void clearAllVariableReferenceFlags ()
 Clears out all variable reference flags from all readerwriter items in registry recursively.
virtual DtSymbolString variableName () const
 The variable name, if this object is a variable reference.
virtual void setVariableName (const DtSymbolString variableName)
virtual const DtReaderWriterdefaultRWValue () const
 The default value to use if the reader/writer object is a variable and that variable is not specified.
virtual DtReaderWriterdefaultRWValue ()
virtual void setDefaultRWValue (DtReaderWriter *)
 Previous default value, if exists, will be removed and replaced with a clone of the supplied variable.
virtual bool checkAndSetDefaultRWValue (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
 Give the stream, if the stream contains a default value then set it here.
const DtReaderWriterRegistryregistry () const
 Collection of child DtReaderWriter nodes owned by this object.
DtReaderWriterRegistryregistry ()
virtual DtPropertyInterfaceproperty ()
virtual const DtPropertyInterfaceproperty () const
virtual DtString toXml () const
virtual DtRwVariableBindingsgenerateVariableBindings () const
 Iterates over the registry (recursively) and returns a variable bindings object that contains all the variables that are contained in this read/writer class.
virtual bool toXml (const DtFilename &) const
 Writes contents of xml result to the given filename.
virtual bool fromXml (const DtString &)
 Restores object from given xml string. Returns true if valid.
virtual bool fromXmlFile (const DtFilename &)
 Restores object from given xml file.
virtual void putSelf (DtEnvironmentSP, DtEnvValueSP parent) const
virtual void putData (DtEnvironmentSP, DtEnvValueSP value) const
 Override to add attributes of actual data.
virtual void putVariableReference (DtEnvironmentSP, DtEnvValueSP value) const
 Called when the item is a variable reference.
virtual void getSelf (const DtEnvironmentSP, const DtEnvValueSP root, const SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &bindings=DtVariableBindingsList())
virtual void getData (const DtEnvironmentSP, const DtEnvValueSP, const SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &bindings=DtVariableBindingsList())
 Gets data from the environment value.
virtual void unrecognizedItem (const DtEnvironmentSP env, const DtEnvValueSP root, const SearchPaths &searchPaths, const DtVariableBindingsList &varBindings)
 Called when the xml reader tries to parse an unknown reader/writer item. Default is a no-op.
virtual void getVariableReference (DtEnvironmentSP, DtEnvValueSP value)
 Called when the item is a variable reference.

Static Public Member Functions

static DtComponentDescriptorcreator ()
 

Protected Member Functions

 DtWeaponControllerDescriptor ()
 default constructor
- Protected Member Functions inherited from DtBaseWeaponControllerDescriptor
 DtBaseWeaponControllerDescriptor ()
 default constructor; not implemented
- Protected Member Functions inherited from DtComponentDescriptor
 DtComponentDescriptor ()
 default constructor; not implemented
- Protected Member Functions inherited from DtReaderWriter
virtual void bindToRwAsVariable (const DtReaderWriter *rw)
 Copies values from the specified DtReaderWriter.

Protected Attributes

parameters

These parameters are available for setting in the OPD files.

DtReaderWriterFile myAmmoSelectTableFile
 Parameter Name: ammo-select-table-file
Parameter Description: Filename used for the ammo select table.
DtAmmoSelectTable myAmmoSelectTable
 Parameter Name: ammo-select-table
Parameter Description: Table that provides a list of munitions that are appropriate for specific target types.
DtRwString myRangeName
 Parameter Name: range-name
Parameter Description: Text name used when displaying the range ring or weapon name of this weapon in the VRF GUI.
DtTargetSelectionCriteria myTargetSelectionCriteria
 Parameter Name: targeting-control
Parameter Description: List of DtTargetSelectionCriteria objects, that hold target selection criteria for a given weapon system.
DtTargetingControlTable myTargetingControlTable
 Parameter Name: targeting-control-table
Parameter Description: The table that will specify ammunition that is available to this controller and target priorities.
- Protected Attributes inherited from DtBaseWeaponControllerDescriptor
DtRwReal myFireMaxVehicleSpeed
 Parameter Name: max-vehicle-speed-to-fire
Parameter Description: Some vehicles must stop to shoot, others have a maximum speed to launch a munition.
DtRwReal myMaxAzimuthAngleOffBoresight
 Parameter Name: max-azimuth-angle-off-boresight
Parameter Description: Some munitions, especially missiles, can be fired before the launcher is pointing at the target, since the missile can maneuver to reach the target.
DtRwReal myMaxElevationAngleOffBoresight
 Parameter Name: max-elevation-angle-off-boresight
Parameter Description: Some munitions, especially missiles, can be fired before the launcher is pointing at the target, since the missile can maneuver to reach the target.
DtRwReal myMaxAngleOffBoresight
 Parameter Name: max-angle-off-boresight
Parameter Description: NOTE: This parameter is deprecated.
DtRwBoolean myDoWeaponPreload
 Parameter Name: preload-weapon
Parameter Description: Setting PreloadWeapon to True will result in the weapon being loaded with the first munition choice if no target is currently available.
DtRwTime myLoadAmmoTime
 Parameter Name: load-ammo-time
Parameter Description: The time delay from the time an ammo is selected to the time (an unloaded) gun is ready to fire.
DtRwTime myUnloadAmmoTime
 Parameter Name: unload-ammo-time
Parameter Description: The time is takes to remove ammo (of the wrong type, presumably) from the gun.
DtRwBoolean myDisabledBySuppression
 Parameter Name: disabled-by-suppression
Parameter Description: A boolean that indicates if this weapon should be disabled when the entity is suppressed.
- Protected Attributes inherited from DtComponentDescriptor
DtRwString myComponentType
 Parameter Name: component-type
Parameter Description: String identifying type of component.
DtRwReal myMinTickPeriod
 Parameter Name: min-tick-period
Parameter Description: Average tick period for this component.
DtRwReal myMinTickPeriodVariance
 Parameter Name: min-tick-period-variance
Parameter Description: A time range for the tick period.
DtRwBoolean myTickPeriodUsesRealTime
 Parameter Name: tick-period-uses-real-time
Parameter Description: Specified whether the component uses real-time (instead of simulation-time) to determine when it is time to tick.
DtRwString myProcessStateRepositoryName
 Parameter Name: process-state-repository-name
Parameter Description: Name of the process state repository associated with this component.
DtRwString myProcessStateRepositoryType
 Parameter Name: process-state-repository-type
Parameter Description: Type of the process state repository associated with this component.
DtRwBoolean myIsEnabled
 Parameter Name: is-enabled
Parameter Description: Is the component enabled (allowed to tick) or not.
DtRwBoolean myDebug
 This parameter defaults to false.
DtRwReal myMinTaskVisualizationTickPeriod
 Parameter Name: min-task-visualization-tick-period
Parameter Description: Average tick period for this component's task visualizations.
DtRwBoolean myTaskVisualizationsEnabled
 Parameter Name: task-visualizations-enabled
Parameter Description: Whether this component's task visualizations are enabled.
DtRwBoolean myCreateComponent
DtRwBoolean myCreateOnRemoteObject
 Parameter Name: create-on-remote-object
Parameter Description: If true, this component will be created on remote objects as well as local.
- Protected Attributes inherited from DtReaderWriter
const DtSymbolString myName
DtReaderWriterRegistry myRegistry
DtReaderWriterRegistrymyParentRegistry
bool myValueSpecified
bool myReadOnlyFlag
bool myIsVariableReference
DtSymbolString myVariableName
bool myVariableIsBound
DtReaderWritermyDefaultValue
aliasContainer myAliases
 Container for the aliases which represent alternative names for the object.
bool myInvalid
 Set to true if there is a problem reading this item.
bool myChangedFlag
 Set to true when value changes Set to false when value checked with changedSinceLastChecked.

Additional Inherited Members

- Public Types inherited from DtReaderWriter
typedef std::vector
< DtSymbolString
aliasContainer
typedef std::vector
< DtSymbolString >::iterator 
aliasIter
typedef std::vector
< DtSymbolString >
::const_iterator 
aliasConstIter
typedef std::vector< DtFilename > SearchPaths
typedef std::pair
< DtSymbolString, DtString
DtVariableNameType
typedef DtReaderWriterFactory *(* DtReaderWriterFactoryCreatorFcn )()
- Static Protected Attributes inherited from DtComponentDescriptor
static
DtComponentDescriptorFactory
myFactory

Detailed Description

DtWeaponControllerDescriptor; descriptor for the DtWeaponController component.

DtWeaponControllerDescriptor is a DtBaseWeaponControllerDescriptor that has additional information needed for providing parameters to a direct fire weapon controller. In adds an ammo selection table for choosing appropriate ammo based on target type.

Constructor & Destructor Documentation

DtWeaponControllerDescriptor::DtWeaponControllerDescriptor ( const DtString name,
DtReaderWriterRegistry parentRegistry = 0 
)

constructor

DtWeaponControllerDescriptor::DtWeaponControllerDescriptor ( const DtWeaponControllerDescriptor orig,
DtReaderWriterRegistry parentRegistry = 0 
)

copy constructor

virtual DtWeaponControllerDescriptor::~DtWeaponControllerDescriptor ( )
virtual

destructor

DtWeaponControllerDescriptor::DtWeaponControllerDescriptor ( )
protected

default constructor

Member Function Documentation

DtWeaponControllerDescriptor& DtWeaponControllerDescriptor::operator= ( const DtWeaponControllerDescriptor orig)

assignment

virtual DtString DtWeaponControllerDescriptor::type ( ) const
virtual

Returns the type of component this descriptor describes.

Used to create the descriptor on read from an mtl file. Component descriptor type strings are defined in compDescTypes.h.

Returns
DtWeaponControllerDescriptorType

Reimplemented from DtBaseWeaponControllerDescriptor.

virtual DtComponentDescriptor* DtWeaponControllerDescriptor::clone ( DtReaderWriterRegistry parentRegistry = 0) const
virtual

Reimplemented from DtBaseWeaponControllerDescriptor.

virtual const DtAmmoSelectTable& DtWeaponControllerDescriptor::ammoSelectTable ( ) const
virtual

Accessor/mutator for myAmmoSelectTable.

virtual void DtWeaponControllerDescriptor::setAmmoSelectTable ( const DtAmmoSelectTable table)
virtual
virtual void DtWeaponControllerDescriptor::setAmmoSelectTableFilename ( const DtString filename)
virtual

Accessor/mutator for myAmmoSelectTableFile.

virtual const DtString& DtWeaponControllerDescriptor::ammoSelectTableFilename ( )
virtual
virtual const DtString& DtWeaponControllerDescriptor::rangeName ( ) const
virtual

Accessor/mutator for myRangeName.

virtual void DtWeaponControllerDescriptor::setRangeName ( const DtString rangeName)
virtual
virtual DtTargetSelectionCriteria& DtWeaponControllerDescriptor::targetSelectionCriteria ( )
virtual

Accessor/mutator for myTargetSelectionCriteria.

virtual const DtTargetSelectionCriteria& DtWeaponControllerDescriptor::targetSelectionCriteria ( ) const
virtual
virtual const DtTargetingControlTable& DtWeaponControllerDescriptor::targetingControlTable ( ) const
virtual

Accessor for myTargetingControlTable.

virtual DtTargetingControlTable& DtWeaponControllerDescriptor::targetingControlTable ( )
virtual
virtual void DtWeaponControllerDescriptor::postGetSelf ( )
virtual

Updates ammo select and targeting control variables from the targeting control table if that is specified such that controllers that use this descriptor do not have to change their code for updating.

Reimplemented from DtReaderWriter.

static DtComponentDescriptor* DtWeaponControllerDescriptor::creator ( )
static

Returns
Newly created instance of this class, with an empty DtReaderWriter name. Creation methods are registered with a DtComponentDescriptorFactory, so they can be created on demand as they are read in from a parameter database file.

Reimplemented from DtBaseWeaponControllerDescriptor.

Member Data Documentation

DtReaderWriterFile DtWeaponControllerDescriptor::myAmmoSelectTableFile
protected

Parameter Name: ammo-select-table-file
Parameter Description: Filename used for the ammo select table.


Parameter Default Value:

DtAmmoSelectTable DtWeaponControllerDescriptor::myAmmoSelectTable
protected

Parameter Name: ammo-select-table
Parameter Description: Table that provides a list of munitions that are appropriate for specific target types.


Parameter Default Value:

DtRwString DtWeaponControllerDescriptor::myRangeName
protected

Parameter Name: range-name
Parameter Description: Text name used when displaying the range ring or weapon name of this weapon in the VRF GUI.

Parameter Default Value: Blank String

DtTargetSelectionCriteria DtWeaponControllerDescriptor::myTargetSelectionCriteria
protected

Parameter Name: targeting-control
Parameter Description: List of DtTargetSelectionCriteria objects, that hold target selection criteria for a given weapon system.


See DtTargetSelectionCriteria for more information on this item.
Parameter Default Value:

DtTargetingControlTable DtWeaponControllerDescriptor::myTargetingControlTable
protected

Parameter Name: targeting-control-table
Parameter Description: The table that will specify ammunition that is available to this controller and target priorities.

If this is specified will also add ammunition and amounts into resource manager Parameter Default Value:


The documentation for this class was generated from the following file:

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)