VR-Forces 4.6.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Attributes | Private Member Functions
DtBaseWeaponComponentInterface Class Reference

Abstract base class for all psrs that will serve as an interface between a controlling component on the entity and a group of weapon systems of the same type. More...

Inheritance diagram for DtBaseWeaponComponentInterface:
Inheritance graph
[legend]

Public Types

enum  DtWeaponStatus {
  DT_OK_TO_FIRE = 0, DT_WEAPON_DISABLED = 1, DT_NO_AMMUNITION_FOR_TARGET = 2, DT_CANNOT_ACQUIRE_TARGET = 4,
  DT_SUPPRESSED = 8
}
 The status items below are used as bit fields. More...

Public Member Functions

 DtBaseWeaponComponentInterface (DtVrfObject *vrfObject, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
 DtBaseWeaponComponentInterface (const DtBaseWeaponComponentInterface &orig, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
const
DtBaseWeaponComponentInterface
operator= (const DtBaseWeaponComponentInterface &orig)
virtual ~DtBaseWeaponComponentInterface ()
virtual
DtVrfProcessStateRepository
clone (const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const =0
virtual void updateRegionEvaluator ()=0
 This must be called before calling locationWithinRegion() if the host entity has moved at all since this was last called.
virtual bool locationWithinRegion (const DtVector &localLocation) const =0
virtual void setRoundsFiredUponTarget (const int &roundsFired)
 Accessor/mutator for myRoundsFiredUponTarget.
virtual const int roundsFiredUponTarget () const
virtual void setTotalRoundsToFireUponTarget (const int &totalRoundsToFire)
 Accessor/mutator for myTotalRoundsToFireUponTarget.
virtual const int totalRoundsToFireUponTarget () const
virtual void setIsExplicitlyTasked (const bool &explicitlyTasked)
 Accessor/mutator for myIsExplicitlyTasked.
virtual const bool isExplicitlyTasked () const
virtual void setAllowExplicitTasking (const bool &includeInDialogs)
 Accessor/mutator for myAllowExplicitTasking.
virtual const bool allowExplicitTasking () const
virtual void setDisplayName (const DtString &displayName)
 Accessor/mutator for myDisplayName.
virtual const DtString displayName () const
virtual void setWeaponStatus (const int weaponStatus)
 Accessor/mutator for myWeaponStatus.
virtual const int weaponStatus () const
virtual DtString weaponStatusString () const
 Returns a string describing the weapon status.
virtual void addWeaponStatus (const DtWeaponStatus weaponStatus)
 Performs a logical OR of the input status with the existing weapon status, to add the given condition to status.
virtual void removeWeaponStatus (const DtWeaponStatus weaponStatus)
 Removes the given condition from the weapon status by performing a logical AND of the bitwise NOT of the input status with existing weapon status.
virtual void setIsInFiringCycle (const bool)
 Accessor/mutator for myIsInFiringCycle.
virtual bool isInFiringCycle () const
virtual void setResourceList (const std::list< DtString > &list)
 Accessor/mutator for #myResourceList.
virtual const std::list
< DtString > & 
resourceList () const
virtual std::list< DtString > & resourceList ()
virtual void setPriority (const int priority)
 A priority value to determine which weapon on an entity should be used if both have targets.
virtual int priority () const
virtual void createMountPartList (const DtArtPartType partType)
 A list of articulated parts to which this weapon is attached.
virtual const std::list
< DtArtPartType > & 
mountPartList () const
 Retrieves the list.
virtual void setSystemTurretNumber (const DtArtPartType num)
 Accessor/mutator for mySystemTurretNumber.
virtual DtArtPartType systemTurretNumber () const
virtual std::set< DtString > & requiredTokens ()
 Accessor/mutator for myRequiredTokens.
virtual void setRequiredTokens (const std::set< DtString > &tokens)
virtual void setTreatSelectedAsTasked (bool t)
 Accessor for myTreatSelectedAsTasked.
bool treatSelectedAsTasked () const
virtual void setControlExternalTurret (bool c)
 Accessor for myControlExternalTurret.
virtual bool controlExternalTurret () const
- Public Member Functions inherited from DtVrfProcessStateRepository
 DtVrfProcessStateRepository (DtVrfObject *vrfObject, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
 DtVrfProcessStateRepository (const DtVrfProcessStateRepository &orig, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
const DtVrfProcessStateRepositoryoperator= (const DtVrfProcessStateRepository &orig)
virtual ~DtVrfProcessStateRepository ()
virtual bool init ()
 Used for virtual construction. This base method simply returns true.
virtual DtString type () const =0
 Returns the string type of the repository, as defined in procSRTypes.h.
virtual bool loadedFromMTL () const
virtual void getSelf (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
- 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 postGetSelf ()
 Called after either version of getSelf (mtl or environment). Default is no-op.
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 putData (std::string &fp, int indentLevel=0)
 Deriving class overrides these to get/put class specific data.
virtual DtlObjPtr getData (DtlObjPtr args, const SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
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 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.

Protected Attributes

DtRwInt myRoundsFiredUponTarget
 Tracks rounds fired upon current target.
DtRwInt myTotalRoundsToFireUponTarget
 Tracks total rounds to fire upon current target.
DtRwBoolean myIsInFiringCycle
 Indicates that the weapon is in its firing cycle, which may mean is still firing a burst, or is in a mandatory cool down period after firing.
DtRwBoolean myIsExplicitlyTasked
 Tracks whether the weapon system has been explicitly tasked as opposed to a target being automatically selected.
DtRwBoolean myAllowExplicitTasking
DtRwString myDisplayName
 Name to be used in the gui to represent this weapon.
DtVrfObjectmyHostObject
 DtVrfObject the weapon is attached to.
DtRwInt myWeaponStatus
 Current status of the weapon, is it able to fire or not.
std::list< DtStringmyResources
 List of the available munition resources.
DtRwInt myPriority
 A priority value to determine which weapon on an entity should be used if both have targets.
std::list< DtArtPartType > myMountPartList
 A list of articulated parts to which this weapon is attached.
DtArtPartType mySystemTurretNumber
 The articulated part corresponding to the turret in this gun system (as opposed to an ancestor part).
DtRwBoolean myControlExternalTurret
 Indicates that this weapon is controlling parent parts outside of the system to turn the gun.
std::set< DtStringmyRequiredTokens
 List of resources required to operate the weapon; these are tokens that are reserved when the weapon operates, but are not consumed.
DtRwBoolean myTreatSelectedAsTasked
 Indicates that when a target is auto-selected for this gun, vs.
- Protected Attributes inherited from DtVrfProcessStateRepository
DtVrfObjectmyVrfObject
bool myLoadedFromMTL
- 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.

Private Member Functions

 DtBaseWeaponComponentInterface ()
 default constructor, not implemented

Additional Inherited Members

- Static Public Member Functions inherited from DtVrfProcessStateRepository
static
DtVrfProcessStateRepositoryFactory
factory ()
 a DtVrfProcessStateRepositoryFactory is allocated by the DtSimCreator, and this pointer is set.
static void setFactory (DtVrfProcessStateRepositoryFactory *factory)
static void addVrfProcessStateRepositoryCreatorFcn (const DtString &type, DtVrfProcessStateRepositoryCreatorFcn fcn)
static
DtVrfProcessStateRepository
createRepository (const DtString &name, const DtString &type, DtVrfObject *vrfObject, DtReaderWriterRegistry *parentRegistry=0)
 Creates a new state repository object, using the factory.
- Protected Member Functions inherited from DtVrfProcessStateRepository
 DtVrfProcessStateRepository ()
- Static Protected Attributes inherited from DtVrfProcessStateRepository
static
DtVrfProcessStateRepositoryFactory
theFactory

Detailed Description

Abstract base class for all psrs that will serve as an interface between a controlling component on the entity and a group of weapon systems of the same type.

For example a derived child of this, weaponComponentInterface, is used as an interface between the entity's target selection controller and it's direct fire weapons, finding available targets for direct fire weapons that aren't currently engaged, and monitoring their progress.

Member Enumeration Documentation

The status items below are used as bit fields.

To set a state, OR the enumerated value into the weapon status, and to clear the state, AND the Negation of the enumerated value.

Enumerator:
DT_OK_TO_FIRE 
DT_WEAPON_DISABLED 
DT_NO_AMMUNITION_FOR_TARGET 
DT_CANNOT_ACQUIRE_TARGET 
DT_SUPPRESSED 

Constructor & Destructor Documentation

DtBaseWeaponComponentInterface::DtBaseWeaponComponentInterface ( )
private

default constructor, not implemented

DtBaseWeaponComponentInterface::DtBaseWeaponComponentInterface ( DtVrfObject vrfObject,
const DtString rwName = DtString::nullString(),
DtReaderWriterRegistry parentRegistry = 0 
)
DtBaseWeaponComponentInterface::DtBaseWeaponComponentInterface ( const DtBaseWeaponComponentInterface orig,
const DtString rwName = DtString::nullString(),
DtReaderWriterRegistry parentRegistry = 0 
)
virtual DtBaseWeaponComponentInterface::~DtBaseWeaponComponentInterface ( )
virtual

Member Function Documentation

const DtBaseWeaponComponentInterface& DtBaseWeaponComponentInterface::operator= ( const DtBaseWeaponComponentInterface orig)
virtual DtVrfProcessStateRepository* DtBaseWeaponComponentInterface::clone ( const DtString rwName = DtString::nullString(),
DtReaderWriterRegistry parentRegistry = 0 
) const
pure virtual
virtual void DtBaseWeaponComponentInterface::updateRegionEvaluator ( )
pure virtual

This must be called before calling locationWithinRegion() if the host entity has moved at all since this was last called.

Implemented in DtWeaponComponentInterface, and DtIndirectWeaponComponentInterface.

virtual bool DtBaseWeaponComponentInterface::locationWithinRegion ( const DtVector localLocation) const
pure virtual
Returns
True if localLocation falls within the valid target region.
Note
updateRegionEvaluator() must be called prior to this function if there is a chance that the host entity has moved or reoriented since the last time updateRegionEvaluator() was called.

Implemented in DtWeaponComponentInterface, and DtIndirectWeaponComponentInterface.

virtual void DtBaseWeaponComponentInterface::setRoundsFiredUponTarget ( const int roundsFired)
virtual

Accessor/mutator for myRoundsFiredUponTarget.

virtual const int DtBaseWeaponComponentInterface::roundsFiredUponTarget ( ) const
virtual
virtual void DtBaseWeaponComponentInterface::setTotalRoundsToFireUponTarget ( const int totalRoundsToFire)
virtual

Accessor/mutator for myTotalRoundsToFireUponTarget.

virtual const int DtBaseWeaponComponentInterface::totalRoundsToFireUponTarget ( ) const
virtual
virtual void DtBaseWeaponComponentInterface::setIsExplicitlyTasked ( const bool explicitlyTasked)
virtual

Accessor/mutator for myIsExplicitlyTasked.

virtual const bool DtBaseWeaponComponentInterface::isExplicitlyTasked ( ) const
virtual
virtual void DtBaseWeaponComponentInterface::setAllowExplicitTasking ( const bool includeInDialogs)
virtual

Accessor/mutator for myAllowExplicitTasking.

virtual const bool DtBaseWeaponComponentInterface::allowExplicitTasking ( ) const
virtual
virtual void DtBaseWeaponComponentInterface::setDisplayName ( const DtString displayName)
virtual

Accessor/mutator for myDisplayName.

virtual const DtString DtBaseWeaponComponentInterface::displayName ( ) const
virtual
virtual void DtBaseWeaponComponentInterface::setWeaponStatus ( const int  weaponStatus)
virtual

Accessor/mutator for myWeaponStatus.

virtual const int DtBaseWeaponComponentInterface::weaponStatus ( ) const
virtual
virtual DtString DtBaseWeaponComponentInterface::weaponStatusString ( ) const
virtual

Returns a string describing the weapon status.

virtual void DtBaseWeaponComponentInterface::addWeaponStatus ( const DtWeaponStatus  weaponStatus)
virtual

Performs a logical OR of the input status with the existing weapon status, to add the given condition to status.

Updates the weapon status.

virtual void DtBaseWeaponComponentInterface::removeWeaponStatus ( const DtWeaponStatus  weaponStatus)
virtual

Removes the given condition from the weapon status by performing a logical AND of the bitwise NOT of the input status with existing weapon status.

Updates the weapon status.

virtual void DtBaseWeaponComponentInterface::setIsInFiringCycle ( const bool  )
virtual

Accessor/mutator for myIsInFiringCycle.

virtual bool DtBaseWeaponComponentInterface::isInFiringCycle ( ) const
virtual
virtual void DtBaseWeaponComponentInterface::setResourceList ( const std::list< DtString > &  list)
virtual

Accessor/mutator for #myResourceList.

virtual const std::list<DtString>& DtBaseWeaponComponentInterface::resourceList ( ) const
virtual
virtual std::list<DtString>& DtBaseWeaponComponentInterface::resourceList ( )
virtual
virtual void DtBaseWeaponComponentInterface::setPriority ( const int  priority)
virtual

A priority value to determine which weapon on an entity should be used if both have targets.

A value of 1 is the highest priority, and higher numbers are lower priority.

virtual int DtBaseWeaponComponentInterface::priority ( ) const
virtual
virtual void DtBaseWeaponComponentInterface::createMountPartList ( const DtArtPartType  partType)
virtual

A list of articulated parts to which this weapon is attached.

That is, its parent part, that parent's part, etc. Used to determine when different weapons are dependent on the same part. The list contains articulated part type numbers.
The list includes this part (in case another weapon might be mounted on it), but not the base.

This function uses the entity's attachment manager to go through the articulated parts and find the parents and ancestors of this weapon.

virtual const std::list<DtArtPartType>& DtBaseWeaponComponentInterface::mountPartList ( ) const
virtual

Retrieves the list.

virtual void DtBaseWeaponComponentInterface::setSystemTurretNumber ( const DtArtPartType  num)
virtual

Accessor/mutator for mySystemTurretNumber.

virtual DtArtPartType DtBaseWeaponComponentInterface::systemTurretNumber ( ) const
virtual
virtual std::set<DtString>& DtBaseWeaponComponentInterface::requiredTokens ( )
virtual

Accessor/mutator for myRequiredTokens.

Not that for convenience, the mutator takes a list for its argument, while the accessor returns a set.

virtual void DtBaseWeaponComponentInterface::setRequiredTokens ( const std::set< DtString > &  tokens)
virtual
virtual void DtBaseWeaponComponentInterface::setTreatSelectedAsTasked ( bool  t)
virtual

Accessor for myTreatSelectedAsTasked.

bool DtBaseWeaponComponentInterface::treatSelectedAsTasked ( ) const
virtual void DtBaseWeaponComponentInterface::setControlExternalTurret ( bool  c)
virtual

Accessor for myControlExternalTurret.

virtual bool DtBaseWeaponComponentInterface::controlExternalTurret ( ) const
virtual

Member Data Documentation

DtRwInt DtBaseWeaponComponentInterface::myRoundsFiredUponTarget
protected

Tracks rounds fired upon current target.

DtRwInt DtBaseWeaponComponentInterface::myTotalRoundsToFireUponTarget
protected

Tracks total rounds to fire upon current target.

DtRwBoolean DtBaseWeaponComponentInterface::myIsInFiringCycle
protected

Indicates that the weapon is in its firing cycle, which may mean is still firing a burst, or is in a mandatory cool down period after firing.

DtRwBoolean DtBaseWeaponComponentInterface::myIsExplicitlyTasked
protected

Tracks whether the weapon system has been explicitly tasked as opposed to a target being automatically selected.

DtRwBoolean DtBaseWeaponComponentInterface::myAllowExplicitTasking
protected
DtRwString DtBaseWeaponComponentInterface::myDisplayName
protected

Name to be used in the gui to represent this weapon.

DtVrfObject* DtBaseWeaponComponentInterface::myHostObject
protected

DtVrfObject the weapon is attached to.

DtRwInt DtBaseWeaponComponentInterface::myWeaponStatus
protected

Current status of the weapon, is it able to fire or not.

std::list<DtString> DtBaseWeaponComponentInterface::myResources
protected

List of the available munition resources.

This is not written out since it gets updated from the system. Only resources with non zero amounts are on this list. This list is used in the weapon response reply to the front end to provide the available munitions for the user to choose.

DtRwInt DtBaseWeaponComponentInterface::myPriority
protected

A priority value to determine which weapon on an entity should be used if both have targets.

A value of 1 is the highest priority, and higher numbers are lower priority.

std::list<DtArtPartType> DtBaseWeaponComponentInterface::myMountPartList
protected

A list of articulated parts to which this weapon is attached.

That is, its parent part, that parent's part, etc. Used to determine when different weapons are dependent on the same part. The list contains articulated part type numbers.
The list includes this part (in case another weapon might be mounted on it), but not the base.
This list is reconstructed when the ballistic gun controller gets its weapon interfaces, so it does not need to be saved with a scenario.

DtArtPartType DtBaseWeaponComponentInterface::mySystemTurretNumber
protected

The articulated part corresponding to the turret in this gun system (as opposed to an ancestor part).

DtRwBoolean DtBaseWeaponComponentInterface::myControlExternalTurret
protected

Indicates that this weapon is controlling parent parts outside of the system to turn the gun.

I.e., a tank MG is controlling the main turret in order to reach targets outside the normal slew range of the MG.

std::set<DtString> DtBaseWeaponComponentInterface::myRequiredTokens
protected

List of resources required to operate the weapon; these are tokens that are reserved when the weapon operates, but are not consumed.

There is no token reservation system; other components just check to see if their tokens against this set to see if there is a conflict. These resources may represent crew members, for example.

DtRwBoolean DtBaseWeaponComponentInterface::myTreatSelectedAsTasked
protected

Indicates that when a target is auto-selected for this gun, vs.

set in a fire-at-target task, the gun priority should be the same as when the target is set by task. This makes a high priority gun keep control of necessary turrets even if a lower priority gun on the same turret is tasked. Default is false.


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

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)