![]() |
VR-Forces 4.7 Class Documentation
|
A damage actuator that keeps track of "Hit Points" for an entity. More...

Public Member Functions | |
| DtMultipleHitDamageActuator (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) | |
| (const DtString&,DtVrfObject*,DtSimManager*, | |
| virtual | ~DtMultipleHitDamageActuator () |
| destructor Unregisters with the detonation manager. | |
| virtual bool | init () |
| Overridden from the base class to call createPSR(). | |
| virtual bool | createPSR () |
| Create a process state repository, or a different type if it is specified in the OPD. | |
| virtual void | preFirstTickInit () |
| Overridden to set up from PSR - if the current hit points in the PSR is less than zero, sets myCurrentHitPoints and the current hitpoints in the PSR to to the full health points from the descriptor. | |
| virtual bool | adjudicateDirectDamage (const DtDetonationContext &detonationContext) |
| Processes a detonation for this entity, and decrements the hit points on the entity if appropriate. | |
| virtual bool | adjudicateCollateralDamage (const DtDetonationContext &detonationContext) |
| Processes a detonation for this entity, and decrements the hit points on the entity if appropriate. | |
| virtual const char * | type () const |
| Returns a string identifies the class type of component. | |
Public Member Functions inherited from DtDamageAdjudicationActuator | |
| DtDamageAdjudicationActuator (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) | |
| (const DtString&,DtVrfObject*,DtSimManager*, | |
| virtual | ~DtDamageAdjudicationActuator () |
| destructor Unregisters with the detonation manager. | |
| virtual void | tick () |
| Determines the destroyed status of the entity, and then checks to see if the flaming and smoking indicators should be turned off. | |
Public Member Functions inherited from DtActuatorComponent | |
| virtual | ~DtActuatorComponent () |
| destructor | |
| virtual DtSimRadio * | radio () |
| virtual bool | tickWhileDestroyed () const |
| By default, all actuators tick when the entity is destroyed. | |
Public Member Functions inherited from DtSimComponent | |
| DtSimComponent (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) | |
| virtual | ~DtSimComponent () |
| destructor | |
| void | setParentSystem (DtComponentSystem *system) |
| Sets the parent system of this component. | |
| virtual bool | postAddComponentsInit () |
| Called after all components have been created, initialized and added to the component manager. | |
| virtual void | registerAttributeFunctions () |
| Called to register functions that provide system attribute values. | |
| virtual void | postTick () |
| This function is called immediately after tick() is called. | |
| virtual void | timedTick () |
| This version of tick checks to see if the time to tick has arrived. | |
| virtual void | setMinTickPeriod (double minTickPeriod) |
| specifies a minimum tick period (which can also be thought of as | |
| virtual double | minTickPeriod () const |
| access the minimum tick period | |
| virtual void | setMinTickPeriodVariance (double minTickPeriodVariance) |
| set the variance in the minimum tick time | |
| virtual double | minTickPeriodVariance () const |
| access the variance in the minimum tick period | |
| virtual void | setNextTickTime (double nextTickTime) |
| The next tick time is normally calculated internally. | |
| virtual double | nextTickTime () const |
| access the next tick time | |
| virtual double | calculateNextTickTime () const |
| The next tick time is equal to mySimManager->exerciseClock()-> approximateElapsedRealTime() + myMinTickPeriod + a random # between -myMinTickPeriodVariance/2. | |
| virtual double | calculateFirstTickTime () const |
| Returns the first time value that the component should tick at. | |
| virtual void | setEntity (DtVrfObject *entity) |
| The entity's state repository is the place that actuator components make updates and other components look to see our current state. | |
| virtual DtSimComponent * | nextComponent () |
| List management functions. | |
| virtual DtSimComponent * | prevComponent () |
| virtual void | setListItem (DtListItem *item) |
| Used by DtComponentList. | |
| virtual DtListItem * | listItem () |
| virtual void | putData (std::string &fp, int indentLevel=0) |
| putData writes our type, which is provided by the virtual type accessor of the deriving class. | |
| 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 actual stored. | |
| virtual void | addInputPort (DtInputPort *port) |
| Adds this input port to the components input port list so that other components can look it up and attach to it. | |
| virtual void | removeInputPort (DtInputPort *port) |
| virtual DtInputPort * | lookupInputPort (const DtString &portName) |
| Returns a pointer to the input port registered on this component with the specified name. | |
| virtual DtList | inputPortList () const |
| Returns the list of DtInputPorts registered on this component. | |
| virtual void | addOutputPort (DtOutputPort *port) |
| Adds this output port to the components output port list so that other components can look it up and attach to it. | |
| virtual void | removeOutputPort (DtOutputPort *port) |
| virtual DtOutputPort * | lookupOutputPort (const DtString &portName) |
| Returns a pointer to the output port registered on this component with the specified name. | |
| virtual DtList | outputPortList () const |
| Returns the list of DtOutputPorts registered on this component. | |
| virtual void | addInputPortGroup (DtInputPortGroup *group) |
| Adds this input port to the components input port list so that other components can look it up and attach to it. | |
| virtual void | removeInputPortGroup (DtInputPortGroup *group) |
| virtual DtInputPortGroup * | lookupInputPortGroup (const DtString &groupName) |
| Returns a pointer the input port group registered on this component with the specified name. | |
| virtual DtList | inputPortGroupList () const |
| Returns the list of DtInputPortGroups registered on this component. | |
| virtual void | addOutputPortGroup (DtOutputPortGroup *group) |
| Adds this output port group to the components output port group list so that other components can look it up and attach to it. | |
| virtual void | removeOutputPortGroup (DtOutputPortGroup *group) |
| virtual DtOutputPortGroup * | lookupOutputPortGroup (const DtString &groupName) |
| Returns a pointer the output port group registered on this component with the specified name. | |
| virtual DtList | outputPortGroupList () const |
| Returns the list of DtOutputPortGroups registered on this component. | |
| virtual int | priority () const |
| Return the current connection priority for this component. | |
| virtual void | setPriority (int priority) |
| Sets a new connection priority for this component, and changes all current outgoing connections from this component to the new value. | |
| double | dT () const |
| This is the delta-t for this component, which may or may not be the same as the exerciseClock dT. | |
| virtual void | setDT (double deltaT) |
| Note that while dT is calculated internally, this makes it possible to 'lie' to the component about dT if necessary. | |
| virtual void | setComponentDescriptor (DtComponentDescriptor *componentDescriptor) |
| The component descriptor specified in the order of battle file or parameter file that was used to create this component. | |
| virtual const DtComponentDescriptor * | componentDescriptor () const |
| DtVrfProcessStateRepositoryManager * | psrManager () |
| virtual DtString | componentFullName () const |
| virtual DtPhysicalWorld * | physicalWorld () |
| Gets the physical world that this component's entity exists in. | |
| virtual const DtPhysicalWorld * | physicalWorld () const |
| virtual DtAttachedTerrain * | terrainAttachedTo () |
| Gets the terrain that this component's entity is attached to, if any. | |
| virtual const DtAttachedTerrain * | terrainAttachedTo () const |
| virtual DtVrfObject * | entity () |
| Gets the entity. | |
| virtual const DtVrfObject * | entity () const |
| virtual DtSimManager * | simManager () |
| Gets the sim manager. | |
| virtual const DtSimManager * | simManager () const |
| virtual const Coordinate_System * | coordinateSystem () const |
| Gets the coordinate system, as it should always exist if the physical world is in a valid state! | |
| virtual Coordinate_System * | coordinateSystem () |
| virtual DtVrfObjectStateRepository * | localStateRepository () |
| Gets the local state repository. | |
| virtual const DtVrfObjectStateRepository * | localStateRepository () const |
| virtual DtTaskVisualizationMap & | taskVisualizations () |
| Returns the list of task visualizations for this component. | |
| virtual bool | taskVisualizationsActive () const |
| Returns true if task visualizations are currently active for this component. | |
| virtual bool | taskVisualizationsEnabled () const |
| Returns true if task visualizations are enabled for this component. | |
| virtual bool | isThreadSafe () const |
| Returns true if this component is marked as being thread safe. | |
| virtual void | addVRLinkDeferredJob (const boost::function< void()> &callback) |
| Adds a deferred job to the VRLink job queue in the DtParallelTickManager, but only if this component is marked at thread safe. | |
| virtual void | onRestore () |
| Called whenever a component is restored. Default is no-op. | |
| virtual void | enable () |
| Is this component enabled or not. | |
| virtual void | disable () |
| virtual bool | isEnabled () |
| virtual void | setIsEnabled (bool yesNo) |
| virtual DtOutputStream & | objectConsoleDebug (const DtString &channel="") const |
| virtual DtOutputStream & | objectConsoleVerbose (const DtString &channel="") const |
| virtual DtOutputStream & | objectConsoleInfo (const DtString &channel="") const |
| virtual DtOutputStream & | objectConsoleWarn (const DtString &channel="") const |
| virtual DtOutputStream & | objectConsoleError (const DtString &channel="") const |
| virtual DtSimResourceManager & | resourceManager () |
| virtual const DtSimResourceManager & | resourceManager () 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 DtReaderWriter & | operator= (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 aliasContainer & | aliases () 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 char * | readerWriterType () const |
| Used to supply a string type that this reader writer type is. | |
| virtual const char * | xmlType () 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 DtReaderWriter * | defaultRWValue () const |
| The default value to use if the reader/writer object is a variable and that variable is not specified. | |
| virtual DtReaderWriter * | defaultRWValue () |
| 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 DtReaderWriterRegistry & | registry () const |
| Collection of child DtReaderWriter nodes owned by this object. | |
| DtReaderWriterRegistry & | registry () |
| virtual DtPropertyInterface * | property () |
| virtual const DtPropertyInterface * | property () const |
| virtual DtString | toXml () const |
| virtual DtRwVariableBindings * | generateVariableBindings () 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 DtSimComponent * | creator (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) |
| (const DtString&,DtVrfObject*,DtSimManager*, | |
Static Public Member Functions inherited from DtDamageAdjudicationActuator | |
| static bool | processDirectDetonationCallback (const DtDetonationContext &detonationContext, void *usr) |
| The detonation manager uses this function to notify the actuator of when it needs to process an entity detonation for the entity. | |
| static bool | processCollateralDetonationCallback (const DtDetonationContext &detonationContext, void *usr) |
| The detonation manager uses this function to notify the actuator of when it needs to process an ground detonation to determine any collateral damage for the entity. | |
| static void | setDestroyedCallback (DtSimMessage *msg, void *usrData) |
| Calls setDestroyed() | |
| static void | setRestoredCallback (DtSimMessage *msg, void *usrData) |
| Calls setRestored() | |
| static void | setInvulnerableCallback (DtSimMessage *msg, void *usrData) |
| Calls processSetInvulnerable() | |
| static void | setFunctionDamageStatusCallback (DtSimMessage *msg, void *usrData) |
| Calls processSetFunctionDamageStatus() | |
Protected Member Functions | |
| virtual bool | getProbabilities (const DtDetonationContext &detonationContext, DtPrbValueList &probabilities, bool isDirectDamage=true) |
| Gets the list of probabilities from the damage component descriptor's damage tables. | |
| virtual bool | isCatastrophicallyKilled () |
| virtual bool | isFirepowerKilled () |
| virtual bool | isMobilityKilled () |
| virtual void | setRestored () |
| Re-registers the entity to receive detonations since it is now restored. | |
| virtual void | setHitPoints (int current, int full) |
| Sets the hit points in the state data structure. | |
Protected Member Functions inherited from DtDamageAdjudicationActuator | |
| virtual void | getDirectFireSurfaceAndAngleOfIncidence (DtDetonationContext &detonationContext) |
| Determines the fire surface and the angle of incidence of the detonation from a direct fire weapon and puts them in the specified detonation context. | |
| virtual void | getIndirectFireSurfaceAndAngleOfIncidence (DtDetonationContext &detonationContext) |
| Determines the fire surface and the angle of incidence of the detonation and puts them in the specified detonation context. | |
| virtual DtSymbolString | getSurface (DtBoundingVolumeFace impactSurface) |
| virtual bool | getProbabilities (const DtDetonationContext &detonationContext, DtPrbValueList &probabilities, bool isDirectDamage=true) const |
| Gets the list of probabilities from the damage component descriptor's damage tables. | |
| virtual bool | isCatastrophicallyKilled (DtPrbValueList &probabilities, DtSymbolString catastrophicKillString) const |
| Determines if the entity is catastrophically killed by the detonation with the specified list of probabilities. | |
| virtual bool | isFirepowerKilled (DtPrbValueList &probabilities, DtSymbolString firepowerKillString) const |
| Determines if the entity is firepower killed by the detonation with the specified list of probabilities. | |
| virtual bool | isMobilityKilled (DtPrbValueList &probabilities, DtSymbolString mobilityKillString) const |
| Determines if the entity is mobility killed by the detonation with the specified list of probabilities. | |
| virtual bool | isSensorsKilled (DtPrbValueList &probabilities, DtSymbolString sensorsKillString) const |
| Determines if the entity has its sensors killed by the detonation with the specified list of probabilities. | |
| virtual DtSymbolString | catastrophicKillString () const |
| virtual DtSymbolString | mobilityKillString () const |
| virtual DtSymbolString | firepowerKillString () const |
| virtual DtSymbolString | sensorsKillString () const |
| virtual bool | protectedFromCollateralDamageByEmbarkation () const |
| Returns true if this entity is protected from collateral damage because it is embarked. | |
| virtual void | determineDestroyedStatus () |
| This function determines if anything we are attached to are occupying was destroyed (last tick). | |
| virtual void | setDestroyed () |
| Calls setDestroyed on the myLocalStateRepository. | |
| virtual void | processSetInvulnerable (DtSimMessage *msg) |
| Tells the entity to either ignore or process damage caused by detonations. | |
| virtual void | processSetFunctionDamageStatus (DtSimMessage *msg) |
| Updates the function (fire power, mobility, and sensors) damage status of the entity. | |
| virtual bool | registerForDetonations () |
| Registers the entity to receive notification of appropriate detonations and notes that the callbacks have been registered. | |
| virtual bool | unregisterForDetonations () |
| Unregisters the entity to receive notification of appropriate detonations, and notes that the callbacks have been unregistered. | |
| virtual void | setMobilityKilled () |
| Calls setMobilityKilled on the myLocalStateRepository. | |
| virtual void | setFirepowerKilled () |
| Calls setFirepowerKilled on the myLocalStateRepository. | |
| virtual void | setSensorsKilled () |
| Calls setSensorsKilled on the myLocalStateRepository. | |
| virtual void | setRadio (DtSimRadio *radio) |
| Overrides this so it can register its interest the set destroyed message. | |
| virtual void | triggerDestructionExplosions () |
| Starts the destruction explosions if they are configured in the descriptor. | |
| virtual void | updateDestructionExplosions () |
| Called each tick while the entity is destroyed to create any new destruction detonations that should occur since the previous tick. | |
| virtual void | sendDetonation (const DtRwExplosionEntry &explosionEntry) |
| virtual DtVector | positionOnEntity (const DtVector &percentOffset) |
| virtual bool | isRegisteredForDetonations () const |
| Keep track of whether or not we're registered for detonations direct or collateral. | |
| virtual void | setIsRegisteredForDetonations (bool yesOrNo) |
Protected Member Functions inherited from DtActuatorComponent | |
| DtActuatorComponent (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) | |
| (const DtString& name, | |
| DtActuatorComponent () | |
| Default constructor; should not be called. | |
Protected Member Functions inherited from DtSimComponent | |
| virtual double | computeCurrentTime () |
| Compute current time and myDT. | |
| bool | testInvariant () const |
| virtual bool | createPortGroups () |
| Called by init. | |
| virtual bool | createPorts () |
| Called by init. | |
| DtVrfProcessStateRepository * | createComponentPsr (const DtString &defaultPsrType, const DtString &defaultPsrName, bool useDescriptorParams=true) |
| Creates a PSR for this component and registers it with the PSR manager. | |
| virtual void | updateTaskVisualizations () |
| Called to update task visualizations after every tick. | |
| virtual void | destroyTaskVisualizations () |
| Destroys all task visualizations for this component. | |
| virtual void | destroyTaskVisualization (const DtString &name) |
| Destroys an existing task visualization. | |
| virtual DtPointTaskVisualizationPtr | pointTaskVisualization (const DtString &name) |
| Finds an existing or creates a new point task visualization with the given name. | |
| virtual DtLineTaskVisualizationPtr | lineTaskVisualization (const DtString &name) |
| Finds an existing or creates a new line task visualization with the given name. | |
| virtual DtAreaTaskVisualizationPtr | areaTaskVisualization (const DtString &name) |
| Finds an existing or creates a new area task visualization with the given name. | |
| virtual DtTextTaskVisualizationPtr | textTaskVisualization (const DtString &name) |
| Finds an existing or creates a new text task visualization with the given name. | |
| double | calculateNextTaskVisTickTime () const |
| Determines the next time the task visualizations should be ticked. | |
Protected Member Functions inherited from DtReaderWriter | |
| virtual void | bindToRwAsVariable (const DtReaderWriter *rw) |
| Copies values from the specified DtReaderWriter. | |
Protected Member Functions inherited from DtObjectDebugger< DtSimComponent > | |
| DtObjectDebugger () | |
| DtObjectDebugger (const DtObjectDebugger &) | |
| ~DtObjectDebugger () | |
Protected Attributes | |
| DtMultipleHitDamageActuatorDescriptor * | myMultipleHitDamageComponentDescriptor |
| The descriptor that initializes this actuator. | |
| int | myCurrentHitPoints |
| The current health status of the entity. | |
| DtMultipleHitDamagePSR * | myMHDProcessState |
| DtEventId | myCurrentId |
| This is set in adjudicate direct damage to make sure a hit isn't counted twice in a collateral damage. | |
Protected Attributes inherited from DtDamageAdjudicationActuator | |
| DtDamageAdjudicationComponentDescriptor * | myDamageComponentDescriptor |
| DtDamageAdjudicationPSR * | myProcessState |
Protected Attributes inherited from DtActuatorComponent | |
| DtSimRadio * | myRadio |
| Actuators can send messages. | |
Protected Attributes inherited from DtSimComponent | |
| DtVrfObject * | myEntity |
| DtVrfObjectStateRepository * | myLocalStateRepository |
| DtSimManager * | mySimManager |
| DtComponentSystem * | mySystem |
| Pointer to the DtComponentSystem that this component belongs. | |
| DtListItem * | myListItem |
| DtInputPortMap | myInputPortList |
| DtOutputPortMap | myOutputPortList |
| DtInputPortGroupMap | myInputPortGroupList |
| DtOutputPortGroupMap | myOutputPortGroupList |
| int | myPriority |
| double | myMinTickPeriod |
| double | myMinTickPeriodVariance |
| double | myNextTickTime |
| double | myLastTickSimTime |
| double | myDT |
| bool | myIsEnabled |
| Indicates whether this component should be enabled for ticking or not. | |
| bool | myFirstTick |
| Initialized to true in the constructor, set to false by the first call to postTick. | |
| bool | myIsThreadSafe |
| Whether this component can be use the DtCriticalSection versions of the tick functions and be ticked in parallel with other components Defaults to false. | |
| const DtComponentDescriptor * | myComponentDescriptor |
| std::list < DtVrfProcessStateRepository * > | myComponentPsrs |
| List of PSRs made using createComponentPsr() that will be deleted by this component when it is destroyed. | |
| bool | myTickEveryFrame |
| Flag indicating that tickPeriod is set to 0, and the component will tick every frame. | |
| DtTaskVisualizationMap | myTaskVisualizations |
| The visualization objects to be drawn for this component. | |
| double | myNextTaskVisTickTime |
| The next tick time for updating the task visualizations. | |
| __itt_string_handle * | myTickITTStringHandle |
Protected Attributes inherited from DtReaderWriter | |
| const DtSymbolString | myName |
| DtReaderWriterRegistry | myRegistry |
| DtReaderWriterRegistry * | myParentRegistry |
| bool | myValueSpecified |
| bool | myReadOnlyFlag |
| bool | myIsVariableReference |
| DtSymbolString | myVariableName |
| bool | myVariableIsBound |
| DtReaderWriter * | myDefaultValue |
| 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 | |
| DtMultipleHitDamageActuator () | |
| Default constructor; not implemented. | |
| DtMultipleHitDamageActuator (const DtMultipleHitDamageActuator &orig) | |
| copy constructor; not implemented | |
| DtMultipleHitDamageActuator & | operator= (const DtMultipleHitDamageActuator &orig) |
| assignment operator; not implemented | |
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 )() |
Protected Types inherited from DtSimComponent | |
| typedef std::map< DtString, DtInputPort * > | DtInputPortMap |
| typedef std::map< DtString, DtOutputPort * > | DtOutputPortMap |
| typedef std::map< DtString, DtInputPortGroup * > | DtInputPortGroupMap |
| typedef std::map< DtString, DtOutputPortGroup * > | DtOutputPortGroupMap |
Static Protected Attributes inherited from DtSimComponent | |
| static DtSimComponentFactory * | myFactory |
A damage actuator that keeps track of "Hit Points" for an entity.
This subclass of DtDamageAdjudicationActuator adds a concept of Hit Points to the damage system, instead of an entity being destroyed by a single detonation. The same probability tables from DtDamageAdjudicationActuator are used to process a detonation, and determine if it hits the entity, however in this class, if the detonation causes damage to the entity, a hit point is removed. The damaged state of the entity changes at particular levels of hit \ points remaining.
The DtMultipleHitDamageActuatorDescriptor that is used with this class specifies the starting number of hit points. When the current hit points reach 0, the entity becomes destroyed. The descriptor also specified the firepower kill points and mobility kill points. When the remaining number of hit points is equal to or below these numbers, these partial kill states are entered.
Uses Descriptor Type: DtMultipleHitDamageActuatorDescriptor
| DtMultipleHitDamageActuator::DtMultipleHitDamageActuator | ( | const DtString & | name, |
| DtVrfObject * | owner, | ||
| DtSimManager * | simManager, | ||
| DtComponentDescriptor * | desc = 0, |
||
| DtReaderWriterRegistry * | parentRegistry = 0 |
||
| ) |
(const DtString&,DtVrfObject*,DtSimManager*,
| name | Reader writer name of this component. |
| owner | The DtVrfObject that owns this component |
| simManager | The simulation manager (provides access to terrain, message interface, simulation clock). |
| desc | The component descriptor used to initialize this component. |
| parentRegistry | Pointer to the parent reader writer registry (the containing object that reads/writes this object). |
|
virtual |
destructor Unregisters with the detonation manager.
|
private |
Default constructor; not implemented.
|
private |
copy constructor; not implemented
|
virtual |
Overridden from the base class to call createPSR().
Reimplemented from DtDamageAdjudicationActuator.
|
virtual |
Create a process state repository, or a different type if it is specified in the OPD.
Reimplemented from DtDamageAdjudicationActuator.
|
virtual |
Overridden to set up from PSR - if the current hit points in the PSR is less than zero, sets myCurrentHitPoints and the current hitpoints in the PSR to to the full health points from the descriptor.
Otherwise it simply initialized myCurrentHitPoints to the value in the PSR.
Reimplemented from DtSimComponent.
|
virtual |
Processes a detonation for this entity, and decrements the hit points on the entity if appropriate.
Determines damage from a direct impact on the entity
Reimplemented from DtDamageAdjudicationActuator.
|
virtual |
Processes a detonation for this entity, and decrements the hit points on the entity if appropriate.
Determines collateral damage from an impact near the entity
Reimplemented from DtDamageAdjudicationActuator.
|
virtual |
Returns a string identifies the class type of component.
Type values are defined in compTypes.h. DtSimComponent creation functions are registered with the DtSimComponentFactory using the type values as the key. Warning: this function should always return the same pointer and it should be valid forever. This means the data should be static.
Reimplemented from DtDamageAdjudicationActuator.
|
static |
(const DtString&,DtVrfObject*,DtSimManager*,
| name | Reader writer name of this component. |
| owner | The DtVrfObject that owns this component |
| simManager | The simulation manager (provides access to terrain, message interface, simulation clock). |
| desc | The component descriptor used to initialize this component. |
| parentRegistry | Pointer to the parent reader writer registry (the containing object that reads/writes this object). |
Reimplemented from DtDamageAdjudicationActuator.
|
protectedvirtual |
Gets the list of probabilities from the damage component descriptor's damage tables.
| detonationContext | Contains all relevant information for finding the proper probability list. |
| probabilities | The list of probabilities to be filled in correctly if found. |
from adjudicateDirectDamage and adjudicateCollateralDamage Passes in boolean to determine which damage table to use for the look up Default is to lookup in the direct damage file. Set to false for collateral damage file.
|
protectedvirtual |
from adjudicateDirectDamage and adjudicateCollateralDamage
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Re-registers the entity to receive detonations since it is now restored.
Reimplemented from DtDamageAdjudicationActuator.
Sets the hit points in the state data structure.
|
private |
assignment operator; not implemented
|
protected |
The descriptor that initializes this actuator.
It reads in the initial number of hit points this entity has for full health
|
protected |
The current health status of the entity.
|
protected |
|
protected |
This is set in adjudicate direct damage to make sure a hit isn't counted twice in a collateral damage.