|
WSF
|
#include <WsfQuantumTaskerProcessor.hpp>


Public Member Functions | |
| WsfQuantumTaskerProcessor (WsfScenario &aScenario) | |
| WsfQuantumTaskerProcessor (WsfScenario &aScenario, const std::string &aPartClass, const std::string &aPartName) | |
| WsfQuantumTaskerProcessor (const WsfQuantumTaskerProcessor &aSrc) | |
| WsfQuantumTaskerProcessor & | operator= (const WsfQuantumTaskerProcessor &)=delete |
| ~WsfQuantumTaskerProcessor () override | |
| Public Member Functions inherited from WsfTaskManager | |
| WsfTaskManager (WsfScenario &aScenario, const std::string &aClassName="WsfTaskManager") | |
| Constructor. | |
| WsfTaskManager & | operator= (const WsfTaskManager &)=delete |
| ~WsfTaskManager () override=default | |
| const char * | GetScriptClassName () const override |
| WsfProcessor * | Clone () const override |
| A virtual copy constructor. | |
| const int * | GetComponentRoles () const override |
| void * | QueryInterface (int aRole) override |
| bool | PreInitialize (double aSimTime) override |
| bool | Initialize (double aSimTime) override |
| bool | Initialize2 (double aSimTime) override |
| bool | ProcessInput (UtInput &aInput) override |
| void | PlatformDeleted (WsfPlatform *aPlatformPtr) override |
| bool | ProcessMessage (double aSimTime, const WsfMessage &aMessage) override |
| bool | ReceiveMessage (double aSimTime, const WsfMessage &aMessage) override |
| void | TurnOff (double aSimTime) override |
| void | TurnOn (double aSimTime) override |
| void | Update (double aSimTime) override |
| virtual bool | AssignTask (double aSimTime, const WsfTrack &aTrack, WsfStringId aTaskType, const WsfTaskResource &aResource, WsfPlatform *aAssigneePtr, WsfStringId aCommName) |
| virtual bool | CancelTask (double aSimTime, unsigned int aTaskId) |
| virtual void | CancelTask (double aSimTime, WsfTask &aTask, bool aSendCancelMessage) |
| virtual bool | CancelTask (double aSimTime, const WsfTrackId &aTrackId, WsfStringId aTaskType, const WsfTaskResource &aResource, size_t aAssigneeIndex) |
| virtual bool | CreateDelayTask (double aSimTime, double aDelayTime, const WsfTrack &aTrack, WsfStringId aTaskType) |
| virtual bool | ChangeOperatingLevel (double aSimTime, WsfStringId aName, int aLevel, WsfPlatform *aAssigneePtr, WsfStringId aCommName) |
| Change the operating level for a given subordinate. | |
| void | AssigneesForTask (const WsfTrackId &aTrackId, WsfStringId aTaskType, std::vector< size_t > &aAssignees) const |
| size_t | AssigneeForTask (const WsfTrackId &aTrackId, WsfStringId aTaskType, WsfStringId aResourceName) const |
| int | OperatingLevelFor (WsfStringId aConditionName) const |
| Return the current operating level for the specified condition name or status. | |
| int | TasksAssignedTo (size_t aAssigneeIndex, const WsfTrackId &aTrackId, WsfStringId aTaskType, WsfStringId aResourceName) const |
| int | TasksAssignedFor (const WsfTrackId &aTrackId, WsfStringId aTaskType, WsfStringId aResourceName) const |
| int | TasksReceivedFor (const WsfTrackId &aTrackId, WsfStringId aTaskType, WsfStringId aResourceName) const |
| double | TimeTaskAssigned (const WsfTrackId &aTrackId, WsfStringId aTaskType, size_t aAssigneeIndex) const |
| Return the simulation time when a task was assigned. | |
| TaskList & | AssignedTaskList () |
| Return the list of tasks this TaskManager has assigned. | |
| TaskList & | ReceivedTaskList () |
| Return the list of tasks this TaskManager has received. | |
| double | TimeLastTaskAssigned () const |
| double | TimeLastTaskReceived () const |
| void | CheckMessageAcknowledged (double aSimTime, unsigned int aSerialNumber) |
| bool | SendTaskMessage (double aSimTime, const WsfMessage &aMessage, size_t aRecipientIndex, WsfStringId aCommName, bool aReliable) |
| double | SendTrackUpdate (double aSimTime, unsigned int aTaskId) |
| WsfStringId | SelectCommDevice (WsfPlatform *aAssigneePtr, WsfStringId aCommName) |
| const TrackList & | ActiveTrackList () const |
| Return the list of tasks this TaskManager has active. | |
| bool | ShowTaskMessages () const |
| Public Member Functions inherited from WsfScriptProcessor | |
| WsfScriptProcessor (const WsfScenario &aScenario) | |
| WsfScriptProcessor (const WsfScenario &aScenario, WsfStringId aPartClass, const std::string &aPartVarName) | |
| ~WsfScriptProcessor () override | |
| void | SendMessage (double aSimTime, const WsfMessage &aMessage) override |
| virtual void | ExecuteOnMessageCreate (double aSimTime, WsfMessage &aMessage) |
| virtual bool | ExecuteScript (double aSimTime, const std::string &aScriptName) |
| virtual bool | ExecuteScript (double aSimTime, WsfStringId aScriptName, UtScriptData &aScriptRetVal, const UtScriptDataList &aScriptArgs=UtScriptDataList()) |
| void | ExecuteScriptAtTime (double aTime, WsfStringId aScriptName, const UtScriptDataList &aScriptArgs) |
| virtual void | SuppressMessage (bool aSuppressMessage) |
| WsfScriptMessageHandler * | GetMessageHandler () |
| WsfScriptContext & | GetScriptContext () |
| UtScriptContext * | GetScriptAccessibleContext () const override |
| void | SetPlatform (WsfPlatform *aPlatformPtr) override |
| const WsfBehaviorTree * | BehaviorTree () const |
| WsfAdvancedBehaviorTree * | AdvancedBehaviorTree () const |
| virtual const WsfScriptStateMachine * | GetStateMachine () const |
| wsf::ExternalLinks & | GetExternalLinks () |
| std::string | State () |
| std::string | StateAll () |
| void | SetState (std::string &stateName) |
| void | SetStateAll (std::string &stateNameAll) |
| Public Member Functions inherited from WsfProcessor | |
| WsfProcessor (const WsfScenario &aScenario) | |
| ~WsfProcessor () override=default | |
| ComponentList & | GetComponents () |
| const ComponentList & | GetComponents () const |
| virtual void | ProcessCallback (double aSimTime, const WsfCallback &aCallback) |
| WsfComponent * | CloneComponent () const override |
| int | GetComponentInitializationOrder () const override |
| const char * | GetScriptClassName () const override |
| void | PreInput () override |
| void | SetNonOperational (double aSimTime) override |
| void | SetOperational (double aSimTime) override |
| void | PartBroken (double aSimTime) override |
| double | GetUpdateInterval () const override |
| void | SetUpdateInterval (double aUpdateInterval) override |
| Public Member Functions inherited from WsfPlatformPart | |
| WsfPlatformPart (const WsfScenario &aScenario, int aPartType) | |
| WsfPlatformPart & | operator= (const WsfPlatformPart &aRhs)=delete |
| ~WsfPlatformPart () override | |
| bool | DebugEnabled () const |
| Returns 'true' if debugging is enabled for this instance. | |
| void | SetDebugEnabled (bool aDebugEnabled) |
| unsigned int | GetDebugMask () |
| bool | IsExternallyControlled () const |
| virtual void | SetExternallyControlled (double aSimTime, bool aIsExternallyControlled) |
| int | GetPartType () const |
| const char * | GetScriptClassName () const override |
| WsfSimulation * | GetSimulation () const |
| const WsfScenario & | GetScenario () const |
| WsfStringId | GetComponentName () const override |
| void | ComponentParentChanged (WsfPlatform *aPlatformPtr) override |
| WsfPlatform * | GetPlatform () const |
| virtual void | PlatformAdded (double aSimTime, WsfPlatform *aPlatformPtr) |
| double | GetLastStatusChangeTime () const |
| void | SetLastStatusChangeTime (double aSimTime) |
| Allows a system to set the time at which the device was initialized. | |
| bool | CanBeMadeOperational () const |
| Returns an indication that this system can be made operational. | |
| bool | CanBeMadeNonOperational () const |
| Returns an indication that this system can be made non-operational. | |
| bool | CanBeTurnedOn () const |
| Returns an indication that this system can be turned on. | |
| bool | CanBeTurnedOff () const |
| Returns an indication that this system can be turned off. | |
| bool | IsTurnedOn () const |
| bool | InitiallyTurnedOn () const |
| Is the system to be turned 'on' when added to the simulation? | |
| void | SetInitiallyTurnedOn (bool aInitiallyTurnedOn) |
| Sets if the system is turned on when added to the simulation. | |
| virtual void | Restore (double aSimTime) |
| bool | IsOperational () const |
| bool | SetOperational (double aSimTime, bool aMakeOperational) |
| double | GetDamageFactor () const |
| bool | SetDamageFactor (double aSimTime, double aDamageFactor) |
| bool | IsCritical () const |
| void | SetCritical (bool aValue) |
| virtual void | OnPlatformBrokenEvent (double aSimTime) |
| Owning platform has issued a broken event. | |
| bool | IsBroken () const |
| WsfInternalLinks & | GetInternalLinks () |
| Return the internal links for this part. | |
| virtual bool | HasInternalLinks () const |
| Does this platform part have a communication link to other platform parts? | |
| virtual void | SendMessageTo (double aSimTime, const WsfMessage &aMessage, WsfStringId aRecipientId) |
| void | SendMessageToProcessor (double aSimTime, const WsfMessage &aMessage, WsfStringId aRecipientId) |
| virtual void | SendQueuedMessages (double aSimTime) |
| const WsfCategoryList & | GetCategories () const |
| Get the categories to which this part belongs. | |
| void | AddCategory (WsfStringId aCategoryId) |
| Adds the provided category to the platform part's category list. | |
| bool | IsCategoryMember (WsfStringId aCategoryId) const |
| const WsfGroupList & | GetGroups () const |
| Get the groups to which this platform part belongs. | |
| void | JoinGroup (WsfGroup *aGroupPtr) |
| Join the given group. | |
| void | LeaveGroup (WsfGroup *aGroupPtr) |
| Leave the given group. | |
| bool | IsGroupMember (WsfStringId aGroupId) |
| unsigned int | GetUpdateEventEpoch () const |
| void | IncrementUpdateEventEpoch () |
| bool | UpdateEventActive () const |
| Is an 'Update' event active? | |
| void | SetUpdateEventActive (bool aUpdateEventActive) |
| Indicate if the 'Update' event is active. | |
| Public Member Functions inherited from WsfObject | |
| WsfObject () | |
| This is the constructor for the WsfObject class. | |
| ~WsfObject () override | |
| This is the destructor for the WsfObject class. | |
| const char * | GetScriptClassName () const override |
| const std::string & | GetType () const |
| WsfStringId | GetTypeId () const |
| Get the string ID of the 'type' of the object. | |
| void | SetType (WsfStringId aType) |
| const std::string & | GetBaseType () const |
| WsfStringId | GetBaseTypeId () const |
| const TypeList & | GetTypeList () const |
| bool | IsA_TypeOf (WsfStringId aType) const |
| WsfObject & | operator= (const WsfObject &aRhs) |
| Assignment operator. | |
| template<typename T> | |
| void | Serialize (T &aBuff) |
| For XIO (de)serialization. | |
| const std::string & | GetName () const |
| WsfStringId | GetNameId () const |
| void | SetName (WsfStringId aName) |
| Public Member Functions inherited from WsfComponentT< WsfPlatform > | |
| WsfComponentT () | |
| WsfComponentT (const WsfComponentT &) noexcept | |
| WsfComponentT & | operator= (const WsfComponentT &) noexcept |
| ~WsfComponentT () override=default | |
| ParentType * | GetComponentParent () const |
| void | SetComponentParent (ParentType *aParentPtr) |
| Public Member Functions inherited from WsfComponent | |
| virtual | ~WsfComponent ()=default |
| template<typename T> | |
| bool | QueryInterfaceT (T *&aRolePtr) |
| bool | ComponentHasRole (int aRole) |
| Returns true if the component has the specified role. | |
| Public Member Functions inherited from WsfUniqueId | |
| WsfUniqueId () | |
| Construtor initializes the unique identifier to 0. | |
| WsfUniqueId (const WsfUniqueId &) | |
| Copy constructor initializes the unique identifier to 0. | |
| WsfUniqueId & | operator= (const WsfUniqueId &) |
| unsigned int | GetUniqueId () const |
| Get the unique identifier assigned to this object. | |
| template<typename T> | |
| void | Serialize (T &aBuff) |
| For XIO (de)serialization. | |
| Public Member Functions inherited from WsfAuxDataEnabled | |
| WsfAuxDataEnabled ()=default | |
| WsfAuxDataEnabled (const WsfAuxDataEnabled &aSrc)=default | |
| WsfAuxDataEnabled & | operator= (const WsfAuxDataEnabled &aRhs) |
| WsfAuxDataEnabled (WsfAuxDataEnabled &&)=default | |
| WsfAuxDataEnabled & | operator= (WsfAuxDataEnabled &&)=default |
| virtual | ~WsfAuxDataEnabled () noexcept |
| void | SetAuxData (const WsfAttributeContainer &aAuxData) |
| void | DeleteAuxData () |
| Delete the aux data container from the object. | |
| void | MergeAuxData (const WsfAuxDataEnabled &aSrc) |
| Merge the object's aux data with aux data from an existing object. | |
| void | UpdateAuxData (const WsfAuxDataEnabled &aSrc) |
| Update the object's aux data with aux data from an existing object. | |
| bool | HasAuxData () const |
| Returns true if this object has aux data. | |
| bool | ProcessInput (UtInput &aInput) |
| template<typename T> | |
| void | Serialize (T &aBuff) |
| (De)serialization for XIO | |
| WsfAttributeContainer & | GetAuxData () |
| const WsfAttributeContainer & | GetAuxData () const noexcept |
| const WsfAttributeContainer & | GetAuxDataConst () const noexcept |
| Public Member Functions inherited from WsfQuantumMatrix | |
| WsfQuantumMatrix ()=default | |
| WsfQuantumMatrix (const WsfQuantumMatrix &aSrc) | |
| WsfQuantumMatrix & | operator= (const WsfQuantumMatrix &) |
| virtual | ~WsfQuantumMatrix () |
| std::vector< WsfAssetPerception * > & | Assets () |
| std::vector< WsfQuantumTask * > & | Tasks () |
| std::vector< std::vector< double > > & | Values () |
| double | Value (size_t taskIndex, size_t assetIndex) |
| std::vector< std::vector< double > > & | Profit () |
| double | Profit (size_t taskIndex, size_t assetIndex) |
| void | ClearAssets () |
| void | SetAssets (std::vector< WsfAssetPerception * > &aAssets) |
| void | SetTasks (std::vector< WsfQuantumTask * > &aTasks) |
| void | ClearTasks () |
| void | EraseTask (size_t taskIndex) |
| void | RemoveTask (size_t taskIndex) |
| void | EraseAsset (size_t assetIndex) |
| void | RemoveAsset (size_t assetIndex) |
Task status response methods | |
| bool | ReportTaskProgress (double aSimTime, WsfTask &aTask, WsfStringId aSubStatus) |
| Sends a WsfTaskStatusMessage with status cIN_PROGRESS to the task assigner. | |
| bool | ReportTaskComplete (double aSimTime, WsfTask &aTask, WsfStringId aSubStatus) |
| bool | RejectTask (double aSimTime, WsfTask &aTask) |
| void | TaskCompleted (double aSimTime, WsfTask &aTask) override |
| callback for extra processing when a task is marked complete | |
| void | UpdateEvaluations (double aSimTime, WsfQuantumEvaluator &aEvaluator, std::vector< WsfLocalTrack * > &aPerception) override |
| This overwrites the WsfQuantumMatrix method so it can filter out any pairings between assets and tasks they have rejected. | |
| WsfSimulation * | GetSimulation () const |
| bool | AcquireResource (double aSimTime, WsfTask &aTask, const WsfTrack &aTrack) override |
| bool | ReleaseResource (double aSimTime, WsfTask &aTask) override |
| bool | Rejected (WsfAssetPerception *aAssetPtr, WsfQuantumTask *aTaskPtr) |
| Returns whether or not this asset has ever rejected this task. | |
| bool | RejectedAnyTasks (WsfAssetPerception *aAssetPtr) |
| Returns whether or not this asset has ever rejected any tasks. | |
| bool | RejectedByAnyAsset (WsfQuantumTask *aTaskPtr) |
| Returns whether or not this task has ever been rejected. | |
| bool | CompletedAfter (WsfQuantumTask *aTaskPtr, double aSimTime) |
| Returns whether or not this task has been reported as completed after the given sim time. | |
| void | SetMatrixAssets (double aSimTime) |
| void | SetMatrixTasks (double aSimTime, std::map< int, std::set< size_t > > &aAllocationMap) |
| void | SetAllocations (AllocationList &aList) |
| void | AllocateExtraTasks (AllocationList &aList) |
| void | AllocateExtraAssets (AllocationList &aList) |
| virtual bool | ReportTaskComplete (double aSimTime, const WsfTrackId &aTrackId, WsfStringId aTaskType, WsfStringId aResourceName, WsfStringId aSubStatus) |
| virtual bool | ReportTaskProgress (double aSimTime, const WsfTrackId &aTrackId, WsfStringId aTaskType, WsfStringId aResourceName, WsfStringId aSubStatus) |
Standard processor function overwrites | |
| WsfProcessor * | Clone () const override |
| bool | PreInitialize (double aSimTime) override |
| bool | Initialize (double aSimTime) override |
| bool | Initialize2 (double aSimTime) override |
| bool | ProcessInput (UtInput &aInput) override |
| void | Update (double aSimTime) override |
| bool | ProcessMessage (double aSimTime, const WsfMessage &aMessage) override |
| bool | ReceiveMessage (double aSimTime, const WsfMessage &aMessage) override |
| void | PlatformDeleted (WsfPlatform *aPlatformPtr) override |
| const char * | GetScriptClassName () const override |
Overwrite base message handler. | |
| bool | ProcessTaskAssignMessage (double aSimTime, const WsfTaskAssignMessage &aMessage) override |
| bool | ProcessTaskStatusMessage (double aSimTime, const WsfTaskStatusMessage &aMessage) override |
Provide task assignment methods - track not required | |
| virtual bool | AssignTask (double aSimTime, const WsfTask &aTask) |
| bool | AssignTask (double aSimTime, const WsfTrack &aTrack, const WsfTask &aTask, bool aLockTrack=true) override |
Overwrite for no locking & unlocking of local tracks | |
| void | PurgeReceivedTask (double aSimTime, WsfTask &aTask) override |
| void | PurgeTransmittedTask (double aSimTime, WsfTask &aTask) override |
| void | UpdateTaskCorrelation (double aSimTime, WsfTask &aTask) override |
| Update the task track/local track correlation in a received task. | |
Allocation Strategy Settings | |
| virtual void | SetAssetRepresentation (AssetRepresentationType aType) |
| virtual void | SetReallocationStrategy (ReallocationStrategyType aType) |
| See comments for ReallocationStrategyType enum. | |
| virtual void | SetIgnoreAllyTracks (bool aVal) |
| Sets whether or not ally tracks are passed to the generator (and subsequently tasks on those tracks will be used). | |
| WsfQuantumGenerator * | Generator () const |
| WsfQuantumEvaluator * | Evaluator () const |
Task assignment queries | |
| std::list< WsfTask * > | TaskListReceivedOfType (WsfStringId aTaskType) |
| The list is not filtered by the task type if it is zero. | |
| std::list< WsfTask * > | TaskListReceivedForTrack (const WsfTrackId &aTrackId) |
| The list is not filtered by the WsfTrackId if it is null. | |
| std::list< WsfTask * > | TaskListReceivedOfTypeForTrack (WsfStringId aTaskType, const WsfTrackId &aTrackId) |
| The list is not filtered by the WsfTrackId if it is null. | |
| std::list< WsfTask * > | TaskListReceivedForResourceType (int aResourceType) |
| The list is not filtered by the ResourceType if it is cNONE. | |
| std::list< WsfTask * > | TaskListReceivedForResourceName (WsfStringId aResourceName) |
| The list is not filtered by the resource name if it is zero. | |
| std::list< WsfTask * > | TaskListAssignedOfType (WsfStringId aTaskType) |
| std::list< WsfTask * > | TaskListAssignedForTrack (const WsfTrackId &aTrackId) |
| std::list< WsfTask * > | TaskListAssignedForResourceType (int aResourceType) |
| std::list< WsfTask * > | TaskListAssignedForResourceName (WsfStringId aResourceName) |
Task assignee queries | |
| std::set< size_t > | AssigneesForTask (WsfQuantumTask *aTaskPtr) |
| std::set< WsfAssetPerception * > | AssetAssigneesForTask (WsfQuantumTask *aTaskPtr) |
| void | AssigneesForTask (const WsfTrackId &aTrackId, WsfStringId aTaskType, std::vector< size_t > &aAssignees) const |
Additional Inherited Members | |
| static TaskList::iterator | FindTask (TaskList &aTaskList, size_t aAssigneeIndex, const WsfTrackId &aTrackId, WsfStringId aTaskType, WsfStringId aResourceName) |
| static TaskList::iterator | FindTask (TaskList &aTaskList, unsigned int aTaskId) |
| static TaskList::iterator | FindTask (TaskList &aTaskList, unsigned int aTaskId, size_t aAssigneeIndex) |
| Static Public Member Functions inherited from WsfQuantumMatrix | |
| static void | SetRow (std::vector< std::vector< double > > &m, size_t aRow, double aValue) |
| static void | RemoveRow (std::vector< std::vector< double > > &m, size_t aRow) |
| static void | SetColumn (std::vector< std::vector< double > > &m, size_t aCol, double aValue) |
| static void | RemoveColumn (std::vector< std::vector< double > > &m, size_t aCol) |
| UtCallbackListN< void(double, WsfTask &, const WsfTrack &)> | OnTaskAssigned |
| Executes when an assigned task is accepted (by this processor). | |
| UtCallbackListN< void(double, WsfTask &)> | OnTaskCanceled |
| Executes when a task cancel message is processed. | |
| UtCallbackListN< void(double, WsfTask &)> | OnTaskCompleted |
| Executes when an task complete is received. | |
| UtCallbackListN< void(double, WsfTask &, const WsfTrack &)> | OnTaskAssignSent |
| Executes when a task assignment is sent. | |
| UtCallbackListN< void(double, WsfTask &, WsfStringId)> | OnTaskCompleteSent |
| Executes when a task complete is sent. | |
| UtCallbackListN< void(double, WsfTask &)> | OnTaskCancelSent |
| Executes when a task cancel is sent. | |
| Static Public Attributes inherited from WsfAuxDataEnabled | |
| static UtCallbackListN< void(const WsfAuxDataEnabled *)> | AuxDataAccessed |
| static UtCallbackListN< void(const WsfAuxDataEnabled *)> | AuxDataDestroyed |
| virtual bool | ProcessAssociationMessage (double aSimTime, const WsfAssociationMessage &aMessage) |
| virtual bool | ProcessTaskCancelMessage (double aSimTime, const WsfTaskCancelMessage &aMessage) |
| virtual bool | ProcessTaskControlMessage (double aSimTime, const WsfTaskControlMessage &aMessage) |
| virtual bool | ProcessTrackDropMessage (double aSimTime, const WsfTrackDropMessage &aMessage) |
| any sensor tasks for the dropped track will be reported complete/successful | |
| virtual bool | ProcessTrackMessage (double aSimTime, const WsfTrackMessage &aMessage) |
| WsfTaskManager (const WsfTaskManager &aSrc) | |
| Copy constructor. | |
| virtual void | TaskCanceled (double aSimTime, WsfTask &aTask) |
| virtual void | TaskAssignSent (double aSimTime, const WsfTrack &aTrack, WsfTask &aTask) |
| virtual void | TaskAssigned (double aSimTime, const WsfTrack &aTrack, WsfTask &aTask) |
| virtual void | TaskCorrelated (double aSimTime, WsfTask &aTask) |
| Called when a task has been correlated with a local track. | |
| virtual void | OperatingLevelChanged (double aSimTime, std::string aLevel) |
| virtual void | TrackDropped (double aSimTime, const WsfTrackId &aTrackId) |
| bool | DropFromPurgedTaskList (TaskList &aPurgedTaskList, size_t aAssignerIndex, unsigned int aTaskId) |
| bool | GetMessageSender (const WsfMessage &aMessage, size_t &aSenderIndex, WsfStringId &aRcvrCommName) |
| Given a message, get the platform index of the sender and the local device on which the message was received. | |
| void | MessageAcknowledged (unsigned int aSerialNumber) |
| Protected Member Functions inherited from WsfScriptProcessor | |
| WsfScriptProcessor (const WsfScriptProcessor &aSrc) | |
| WsfProcessor (const WsfProcessor &aSrc) | |
| Copy constructor (for Clone()). | |
| WsfProcessor & | operator= (const WsfProcessor &aRhs)=delete |
| WsfPlatformPart (const WsfPlatformPart &aSrc) | |
| Copy constructor (for Clone()). | |
| WsfObject (const WsfObject &aSrc) | |
| Copy constructor (for Clone()). | |
| Protected Member Functions inherited from WsfUniqueId | |
| void | AssignUniqueId (WsfSimulation *aSimulationPtr) |
| WsfTrackManager * | mTrackManagerPtr |
| The track manager that owns the tracks. | |
| std::unique_ptr< WsfTimeDelayQueue > | mThinkerPtr |
| The pointer to the 'thinker'. | |
| PendingMessageList | mPendingMessageList |
| TrackList | mActiveTrackList |
| SensorRequestList | mSensorRequestList |
| std::map< WsfStringId, int > | mOperatingLevels |
| std::set< WsfSensor * > | mSensorsTurnedOn |
| The sensors that have been implicitly turned on. | |
| WsfScenario * | mScenarioPtr |
| UtCallbackHolder | mCallbacks |
| TaskList | mXmtdTaskList |
| Tasks I have sent to others. | |
| TaskList | mPurgedXmtdTaskList |
| TaskList | mRcvdTaskList |
| Tasks I have received from others. | |
| TaskList | mPurgedRcvdTaskList |
| std::set< WsfTrackId > | mPendingRcvdTasks |
| The set of assigned track ID's that are awaiting correlation with local track ID's. | |
| WsfStringId | mTrackProcessorName |
| The name of the track processor whose track manager is the source of tracks. | |
| double | mTrackUpdateInterval |
| WsfRandomVariable | mTimeToRecognizeMessage |
| The amount of time it takes to recognize a message. | |
| double | mCommRetryInterval |
| The amount of time between attempts to retry failed communications. | |
| int | mCommRetryAttempts |
| The number of attempts to retry failed communications. | |
| unsigned int | mNextTaskId |
| The next task ID to be assigned. | |
| bool | mShowTaskMessages |
| True if task related messages are to be displayed. | |
| bool | mShowUncompletedTasks |
| True if leak termination data is to be shown. | |
| TrackUpdateStrategy | mTrackUpdateStrategy |
| Determine how track updates are sent. | |
| double | mTimeLastTaskAssigned |
| The time a task was last sent. | |
| double | mTimeLastTaskReceived |
| The time a task was last received. | |
| Protected Attributes inherited from WsfScriptProcessor | |
| WsfScriptContext * | mContextPtr |
| Pointer to the script context. | |
| WsfScriptMessageHandler * | mMessageHandlerPtr |
| Pointer to the 'on_message' handler. | |
| UtScript * | mOnMessageCreateScriptPtr |
| Pointer to the 'on_message_create' script. | |
| UtScriptClass * | mMessageClassPtr |
| wsf::ExternalLinks | mExternalLinks |
| The external recipients. | |
| WsfBehaviorTree * | mBehaviorTreePtr |
| ut::CloneablePtr< WsfAdvancedBehaviorTree > | mAdvancedBehaviorTreePtr |
| std::unique_ptr< WsfScriptStateMachine > | mStateMachinePtr |
| int | mStateIndex |
| bool | mSuppressMessage |
| Protected Attributes inherited from WsfQuantumMatrix | |
| std::vector< WsfAssetPerception * > | mAssets |
| std::vector< WsfQuantumTask * > | mTasks |
| std::vector< std::vector< double > > | mValues |
| std::vector< std::vector< double > > | mProfits |
WsfQuantumTaskerProcessor is a class for task control. All tasks sent or received by this processor are intended to be compatible with the WsfTaskManager.
This class allows the user to choose or even custom define every step of the tasking process that occurs each update. Some steps are filtered or tailored based on user selected strategies, for example: a task won't be reassigned if using the cSTATIC strategy. The current steps each update in the tasking process are:
If a task reassignment is being performed, a cancel message is sent to the old assignee. If a task stops being generated on update, a cancel message is sent to the old assignee.
If a task is still generated for a stale track, but the task has been reported as completed, then it will not be reassigned unless the track updates as more current than the completion message.
Task assignment messages are only sent on first assign, they are not sent continually
| using WsfQuantumTaskerProcessor::AllocationMap = std::map<int, std::set<WsfAssetPerception*>> |
| WsfQuantumTaskerProcessor::WsfQuantumTaskerProcessor | ( | WsfScenario & | aScenario | ) |
| WsfQuantumTaskerProcessor::WsfQuantumTaskerProcessor | ( | WsfScenario & | aScenario, |
| const std::string & | aPartClass, | ||
| const std::string & | aPartName ) |
References cPLATFORM, cSTATIC, WsfQuantumMatrix::WsfQuantumMatrix(), and WsfTaskManager::WsfTaskManager().
| WsfQuantumTaskerProcessor::WsfQuantumTaskerProcessor | ( | const WsfQuantumTaskerProcessor & | aSrc | ) |
|
override |
References WsfQuantumMatrix::mTasks.
|
overrideprotectedvirtual |
Reimplemented from WsfTaskManager.
|
protected |
References WsfQuantumMatrix::Assets(), WsfQuantumMatrix::EraseAsset(), WsfQuantumMatrix::mAssets, and WsfQuantumMatrix::WsfQuantumMatrix().
Referenced by Update().
|
protected |
References WsfQuantumTask::GetUniqueId(), WsfQuantumMatrix::mTasks, WsfQuantumMatrix::RemoveTask(), WsfQuantumMatrix::Tasks(), and WsfQuantumMatrix::WsfQuantumMatrix().
Referenced by Update().
| std::set< WsfAssetPerception * > WsfQuantumTaskerProcessor::AssetAssigneesForTask | ( | WsfQuantumTask * | aTaskPtr | ) |
References WsfQuantumTask::GetUniqueId().
Referenced by WsfMilEventPipe::QuantumTaskerUpdate().
| void WsfTaskManager::AssigneesForTask | ( | const WsfTrackId & | aTrackId, |
| WsfStringId | aTaskType, | ||
| std::vector< size_t > & | aAssignees ) const |
Return the list of platform (indexes) of the assignees for the specified task.
| aTrackId | The local track ID of the track of interest. If null then the track ID is not a selection criteria. |
| aTaskType | The task type of the tasks to be counted. If zero then the task type is not a selection criteria. |
| aAssignees | The indexes of the platforms that have been assigned to the specified task. |
References WsfScriptProcessor::mContextPtr.
| std::set< size_t > WsfQuantumTaskerProcessor::AssigneesForTask | ( | WsfQuantumTask * | aTaskPtr | ) |
Returns the set of platform indexes that represent all task assignees The set will be empty if the task is not currently assigned
References WsfTask::GetTaskId(), and WsfTaskManager::mXmtdTaskList.
Referenced by Update().
|
virtual |
| aSimTime | :: simulation time |
| aTask | :: task to assign, assign message will be sent if not already |
References WsfTask::GetAssigneePlatformIndex(), WsfTask::GetCommName(), WsfObject::GetName(), WsfPlatformPart::GetPlatform(), WsfSimulation::GetPlatformByIndex(), WsfTask::GetResourceName(), GetSimulation(), WsfTask::GetTaskId(), WsfTask::GetTaskType(), WsfTask::Initialize(), WsfTaskManager::mNextTaskId, WsfTaskManager::mShowTaskMessages, WsfTaskManager::mTimeLastTaskAssigned, WsfTaskManager::mXmtdTaskList, WsfTaskManager::OnTaskAssignSent, WsfTaskManager::SelectCommDevice(), WsfTaskManager::SendTaskMessage(), WsfTask::SetCommName(), WsfTaskAssignMessage::SetTask(), WsfTaskAssignMessage::SetTrack(), WsfObserver::TaskAssigned(), and WsfTaskManager::TaskAssignSent().
Referenced by AssignTask(), SetMatrixTasks(), and Update().
|
overridevirtual |
| aSimTime | :: simulation time |
| aTrack | :: track to be associated with the task |
| aTask | :: task to assign, assign message will be sent if not already |
| aLockTrack | :: parameter ignored in this function overwrite |
Reimplemented from WsfTaskManager.
References AssignTask(), WsfTaskManager::AssignTask(), WsfTrack::GetTrackId(), and WsfTrackId::IsNull().
|
overridevirtual |
Create a clone of this object.
Implements WsfProcessor.
References WsfProcessor::WsfProcessor(), and WsfQuantumTaskerProcessor().
Referenced by WsfScriptQuantumTaskerProcessor::Clone(), and WsfBrawlerProcessor::CloneComponent().
|
protected |
Returns whether or not this task has been reported as completed after the given sim time.
References WsfQuantumTask::GetUniqueId().
Referenced by SetMatrixTasks().
|
inline |
|
inline |
|
override |
| WsfSimulation * WsfPlatformPart::GetSimulation | ( | ) | const |
|
overridevirtual |
Perform phase 1 initialization of the part. This is invoked by WsfPlatform::Initialize() during phase 1 initialization of the platform. During phase 1 initialization, platform components must not assume the existence of ANY data that is the responsibility of another platform component. In particular, the platform location and initial tracks cannot be assumed to be valid.
| aSimTime | The current simulation time. |
Reimplemented from WsfProcessor.
References WsfPerceptionProcessor::GetPerceptionProcessor(), WsfPlatformPart::GetPlatform(), WsfScriptProcessor::GetScriptContext(), WsfTaskManager::Initialize(), and ok.
Referenced by WsfBrawlerProcessor::Initialize().
|
overridevirtual |
Perform phase 2 initialization of the part. This is invoked by WsfPlatform::Initialize() during phase 2 initialization of the platform. During phase 2, platform components may assume that the platform location has been defined, initial tracks have been loaded and that all components have completed phase 1 initialization.
| aSimTime | The current simulation time. |
Reimplemented from WsfProcessor.
References WsfTaskManager::Initialize2().
|
delete |
|
overridevirtual |
Some other platform has been deleted from the simulation.
This is invoked (via WsfPlatform::PlatformDeleted) whenever another platform has been deleted from the simulation.
| aPlatformPtr | Pointer to the platform being deleted. |
Reimplemented from WsfPlatformPart.
References WsfTaskManager::PlatformDeleted().
|
overridevirtual |
Perform pre-initializion function. This is called by WsfPlatform::Initialize prior to actually initializing the components on a platform (i.e.: calling Initialize and Initialize2 for each component). The primary reason for this method is to allow components to add other components that will then be subsequently initialized. The component may examine the component list and add components, but it must not assume ANYTHING about the actual state of the component.
| aSimTime | The current simulation time. |
Reimplemented from WsfProcessor.
References WsfTaskManager::PreInitialize().
|
overridevirtual |
Process input from a generic source.
Examine the current input command. If it is NOT one of the commands recognized by this class then it simply returns 'false'. If it is one of the commands recognized by this class then it processes the command and returns 'true'.
| aInput | a reference to a UtInput object. |
| UtInput::ExceptionBase | (or an object derived from it) if the command was recognized but contains some sort of error. |
Reimplemented from WsfProcessor.
References cDYNAMIC, cEVENT, cPLATFORM, WsfQuantumEvaluatorFactory::CreateEvaluator(), WsfQuantumGeneratorFactory::CreateGenerator(), cRESOURCES, cRESPONSE, cSTATIC, cSYSTEMS, WsfQuantumAllocatorFactory::Instance(), WsfQuantumEvaluatorFactory::Instance(), WsfQuantumGeneratorFactory::Instance(), WsfScriptProcessor::mContextPtr, WsfTaskManager::ProcessInput(), SetIgnoreAllyTracks(), and SetReallocationStrategy().
Referenced by WsfBrawlerProcessor::ProcessInput().
|
overridevirtual |
Process a received message.
| aSimTime | The current simulation time. |
| aMessage | The message that is being sent. |
Reimplemented from WsfPlatformPart.
References WsfScriptProcessor::ProcessMessage(), and WsfTaskManager::ProcessMessage().
|
overridevirtual |
| aSimTime | :: simulation time |
| aMessage | :: message carrying the task to process |
Reimplemented from WsfTaskManager.
References WsfTask::GetAssignerPlatformIndex(), WsfTask::GetAssignerProcessorName(), WsfTaskManager::GetMessageSender(), WsfObject::GetName(), WsfPlatformPart::GetPlatform(), WsfPlatformPart::GetScenario(), WsfMessage::GetSerialNumber(), GetSimulation(), WsfTaskAssignMessage::GetTask(), WsfTaskAssignMessage::GetTrack(), WsfTask::GetTrackId(), WsfTrackId::IsNull(), WsfTaskManager::mRcvdTaskList, WsfTaskManager::OnTaskAssigned, WsfTaskManager::ProcessTaskAssignMessage(), WsfTaskManager::SendTaskMessage(), WsfTaskStatusMessage::SetAcknowledgeId(), WsfTask::SetCommName(), WsfObserver::TaskAccepted(), and WsfTaskManager::TaskAssigned().
|
overridevirtual |
Reimplemented from WsfTaskManager.
References WsfSimulation::AddEvent(), WsfTaskManager::cDEFAULT, WsfTaskManager::DropFromPurgedTaskList(), WsfTaskStatusMessage::GetAcknowledgeId(), WsfTask::GetAssigneePlatformIndex(), WsfTaskStatusMessage::GetAssigneePlatformIndex(), WsfTaskStatusMessage::GetAssigneePlatformName(), WsfTaskStatusMessage::GetAssignerPlatformIndex(), WsfTask::GetCommName(), WsfObject::GetName(), WsfPlatformPart::GetPlatform(), WsfTaskStatusMessage::GetResourceName(), WsfPlatformPart::GetScenario(), WsfMessage::GetSerialNumber(), GetSimulation(), WsfTaskStatusMessage::GetStatus(), WsfTaskStatusMessage::GetSubStatus(), WsfTask::GetTaskId(), WsfTaskStatusMessage::GetTaskId(), WsfTaskStatusMessage::GetTaskType(), WsfTaskStatusMessage::GetTrackId(), WsfTaskManager::MessageAcknowledged(), WsfTaskManager::mPurgedRcvdTaskList, WsfTaskManager::mPurgedXmtdTaskList, WsfTaskManager::mShowTaskMessages, WsfTaskManager::mTrackUpdateInterval, WsfTaskManager::mTrackUpdateStrategy, WsfTaskManager::mXmtdTaskList, WsfTaskManager::OnTaskCompleted, PurgeTransmittedTask(), WsfTaskManager::SendTaskMessage(), WsfTaskStatusMessage::SetAcknowledgeId(), WsfTaskStatusMessage::SetIsFromAssignee(), WsfTask::SetStatus(), WsfTask::SetSubStatus(), WsfTask::SetUpdateTime(), and TaskCompleted().
|
overridevirtual |
these function are being overwritten so that the local track associated with the quantum task is not locked or unlocked
| aSimTime | :: simulation time |
| aTask | :: task to be purged or correlated |
Reimplemented from WsfTaskManager.
References WsfTaskManager::CancelTask(), WsfTask::GetAssigneePlatformIndex(), WsfTask::GetAssigneePlatformName(), WsfTask::GetAssignerPlatformIndex(), WsfTask::GetLocalTrackId(), WsfObject::GetName(), WsfPlatformPart::GetPlatform(), WsfTask::GetResourceName(), WsfTask::GetTaskType(), WsfTask::GetTrackId(), WsfTaskManager::mPendingRcvdTasks, WsfTaskManager::mShowTaskMessages, WsfTaskManager::mXmtdTaskList, and ReleaseResource().
Referenced by operator=(), and RejectTask().
|
overridevirtual |
Perform the actions necessary to purge a transmitted task. This routine is invoked by the transmitter of a task after it has been notified that the receiver has completed the task (successfully, unsuccessfully or rejected) or if assignee did not accept the task in the required time interval.
| aSimTime | The current simulation time. |
| aTask | The task being purge. |
Reimplemented from WsfTaskManager.
Referenced by operator=(), and ProcessTaskStatusMessage().
|
overridevirtual |
Receive a message from another platform part (system). The default implementation simply calls ProcessMessage to process the received message.
| aSimTime | The current simulation time. |
| aMessage | The message that is being sent. |
Reimplemented from WsfPlatformPart.
References WsfTaskManager::ReceiveMessage().
|
protected |
Returns whether or not this asset has ever rejected this task.
References WsfQuantumTask::GetUniqueId(), and WsfAssetPerception::mIndex.
Referenced by UpdateEvaluations().
|
protected |
Returns whether or not this asset has ever rejected any tasks.
References WsfAssetPerception::mIndex.
Referenced by UpdateEvaluations().
|
protected |
Returns whether or not this task has ever been rejected.
References WsfQuantumTask::GetUniqueId().
Referenced by SetMatrixTasks().
| bool WsfQuantumTaskerProcessor::RejectTask | ( | double | aSimTime, |
| WsfTask & | aTask ) |
Sends a WsfTaskStatusMessage with status cREJECTED to the task assigner Removes the task from the received task list All this triggers the TaskCompleted() callback later on
References WsfTaskManager::DropFromPurgedTaskList(), WsfTask::GetAssignerPlatformIndex(), WsfTask::GetAssignerProcessorName(), WsfObject::GetName(), WsfPlatformPart::GetPlatform(), WsfSimulation::GetPlatformByIndex(), WsfTask::GetResourceName(), WsfPlatformPart::GetScenario(), GetSimulation(), WsfTask::GetTaskId(), WsfTask::GetTaskType(), WsfTask::GetTrackId(), WsfTaskManager::mPurgedRcvdTaskList, WsfTaskManager::mRcvdTaskList, WsfTaskManager::mShowTaskMessages, PurgeReceivedTask(), WsfTaskManager::SelectCommDevice(), and WsfTaskManager::SendTaskMessage().
|
overrideprotectedvirtual |
Reimplemented from WsfTaskManager.
Referenced by PurgeReceivedTask().
|
protectedvirtual |
| bool WsfQuantumTaskerProcessor::ReportTaskComplete | ( | double | aSimTime, |
| WsfTask & | aTask, | ||
| WsfStringId | aSubStatus ) |
Sends a WsfTaskStatusMessage with status cCOMPLETED to the task assigner (The provided sub-status is typically cSUCCESSFUL or cUNSUCCESSFUL) This removes the task from the received task list All this triggers the TaskCompleted() callback later on
References WsfTask::GetResourceName(), WsfTask::GetTaskType(), WsfTask::GetTrackId(), and WsfTaskManager::ReportTaskComplete().
|
protectedvirtual |
Reimplemented from WsfTaskManager.
| bool WsfQuantumTaskerProcessor::ReportTaskProgress | ( | double | aSimTime, |
| WsfTask & | aTask, | ||
| WsfStringId | aSubStatus ) |
Sends a WsfTaskStatusMessage with status cIN_PROGRESS to the task assigner.
will send a WsfTaskStatusMessage to task assigner with proper fields populated
| aSimTime | :: simulation time |
| aTask | :: task to report on, complete, or reject |
| aSubStatus | :: extra data to be passed with report |
References WsfTask::GetResourceName(), WsfTask::GetTaskType(), WsfTask::GetTrackId(), and WsfTaskManager::ReportTaskProgress().
|
protected |
References WsfQuantumTask::GetUniqueId(), WsfQuantumMatrix::RemoveTask(), WsfQuantumMatrix::Tasks(), and WsfQuantumMatrix::WsfQuantumMatrix().
Referenced by Update().
|
inlinevirtual |
WsfAssetPerception objects (that represent platforms) can be split into many smaller objects each representing their own platform subsystem
|
inlinevirtual |
Sets whether or not ally tracks are passed to the generator (and subsequently tasks on those tracks will be used).
Referenced by ProcessInput().
|
protected |
References WsfQuantumMatrix::ClearAssets(), cRESOURCES, cSYSTEMS, WsfPlatformPart::GetPlatform(), WsfPerceptionProcessor::GetPlatformPerceivedAssets(), and WsfQuantumMatrix::SetAssets().
Referenced by Update().
|
protected |
References WsfQuantumMatrix::Assets(), AssignTask(), cEVENT, CompletedAfter(), cRESPONSE, cSTATIC, WsfPlatformPart::GetPlatform(), WsfPerceptionProcessor::GetPlatformPerceivedThreats(), WsfTask::GetTargetName(), WsfTask::GetTaskId(), WsfQuantumTask::GetUniqueId(), WsfTaskData::mAssigneePlatformName, WsfTaskManager::mXmtdTaskList, RejectedByAnyAsset(), WsfTask::SetAssigneePlatformIndex(), WsfTask::SetAssigneeProcessorName(), WsfTask::SetAssignerPlatformIndex(), WsfTask::SetResourceName(), and WsfQuantumMatrix::SetTasks().
Referenced by Update().
|
inlinevirtual |
See comments for ReallocationStrategyType enum.
Referenced by ProcessInput().
|
overridevirtual |
callback for extra processing when a task is marked complete
Callback used to record which tasks are rejected or completed.
Reimplemented from WsfTaskManager.
References WsfTask::GetAssigneePlatformIndex(), WsfPlatformPart::GetScenario(), WsfTask::GetStatus(), WsfTask::GetTaskId(), and WsfTaskManager::TaskCompleted().
Referenced by ProcessTaskStatusMessage().
| std::list< WsfTask * > WsfQuantumTaskerProcessor::TaskListAssignedForResourceName | ( | WsfStringId | aResourceName | ) |
References WsfTaskManager::mXmtdTaskList.
| std::list< WsfTask * > WsfQuantumTaskerProcessor::TaskListAssignedForResourceType | ( | int | aResourceType | ) |
References cTASK_RESOURCE_TYPE_NONE, and WsfTaskManager::mXmtdTaskList.
| std::list< WsfTask * > WsfQuantumTaskerProcessor::TaskListAssignedForTrack | ( | const WsfTrackId & | aTrackId | ) |
References WsfTrackId::IsNull(), and WsfTaskManager::mXmtdTaskList.
| std::list< WsfTask * > WsfQuantumTaskerProcessor::TaskListAssignedOfType | ( | WsfStringId | aTaskType | ) |
References WsfTaskManager::mXmtdTaskList.
| std::list< WsfTask * > WsfQuantumTaskerProcessor::TaskListReceivedForResourceName | ( | WsfStringId | aResourceName | ) |
The list is not filtered by the resource name if it is zero.
References WsfTaskManager::mRcvdTaskList.
| std::list< WsfTask * > WsfQuantumTaskerProcessor::TaskListReceivedForResourceType | ( | int | aResourceType | ) |
The list is not filtered by the ResourceType if it is cNONE.
References cTASK_RESOURCE_TYPE_NONE, and WsfTaskManager::mRcvdTaskList.
| std::list< WsfTask * > WsfQuantumTaskerProcessor::TaskListReceivedForTrack | ( | const WsfTrackId & | aTrackId | ) |
The list is not filtered by the WsfTrackId if it is null.
References WsfTrackId::IsNull(), and WsfTaskManager::mRcvdTaskList.
| std::list< WsfTask * > WsfQuantumTaskerProcessor::TaskListReceivedOfType | ( | WsfStringId | aTaskType | ) |
The list is not filtered by the task type if it is zero.
References WsfTaskManager::mRcvdTaskList.
Referenced by WsfBrawlerProcessor::GetConsciousnessEventTime(), WsfBrawlerProcessor::GetTargetTrack(), and WsfBrawlerProcessor::UpdateMissileMode().
| std::list< WsfTask * > WsfQuantumTaskerProcessor::TaskListReceivedOfTypeForTrack | ( | WsfStringId | aTaskType, |
| const WsfTrackId & | aTrackId ) |
The list is not filtered by the WsfTrackId if it is null.
References WsfTrackId::IsNull(), and WsfTaskManager::mRcvdTaskList.
|
overridevirtual |
Update the state of the processor. This method should perform any actions that are necessary so that the system reflects its condition at the supplied time.
| aSimTime | The current simulation time. |
Reimplemented from WsfProcessor.
References AllocateExtraAssets(), AllocateExtraTasks(), AssigneesForTask(), AssignTask(), WsfTaskManager::CancelTask(), WsfTask::GetAssigneePlatformIndex(), WsfPlatformPart::GetPlatform(), WsfSimulation::GetPlatformByIndex(), WsfPerceptionProcessor::GetPlatformPerceivedThreats(), WsfTask::GetResourceType(), GetSimulation(), WsfTask::GetTargetName(), WsfTask::GetTaskId(), WsfQuantumMatrix::mAssets, WsfAssetPerception::mIndex, WsfAssetPerception::mSystems, WsfQuantumMatrix::mTasks, WsfTaskManager::mXmtdTaskList, WsfObserver::QuantumTaskerUpdate(), SetAllocations(), WsfTask::SetAssignee(), WsfTask::SetAssigneePlatformIndex(), WsfTask::SetAssignerPlatformIndex(), SetMatrixAssets(), SetMatrixTasks(), WsfTask::SetResourceName(), WsfScriptProcessor::Update(), and UpdateEvaluations().
Referenced by WsfBrawlerProcessor::MindUpdate().
|
overridevirtual |
This overwrites the WsfQuantumMatrix method so it can filter out any pairings between assets and tasks they have rejected.
uses the given evaluator to fill out the asset-task pairing values matrix
| aSimTime | :: simulation time |
| aEvaluator | :: evaluator to use for providing asset-task scoring |
| aPerception | :: list of perception objects to use in evaluation |
Reimplemented from WsfQuantumMatrix.
References WsfQuantumEvaluator::Evaluate(), WsfQuantumMatrix::mAssets, WsfQuantumMatrix::mProfits, WsfQuantumMatrix::mTasks, WsfQuantumMatrix::mValues, Rejected(), RejectedAnyTasks(), and WsfQuantumMatrix::UpdateEvaluations().
Referenced by Update().
|
overridevirtual |
Update the task track/local track correlation in a received task.
Reimplemented from WsfTaskManager.
References WsfObject::GetName(), WsfPlatformPart::GetPlatform(), WsfTask::GetTaskType(), WsfTask::GetTrackId(), WsfTaskManager::mPendingRcvdTasks, WsfTaskManager::mShowTaskMessages, WsfTaskManager::mTrackManagerPtr, WsfTask::SetLocalTrackId(), WsfTaskManager::TaskCorrelated(), and trackPtr.
Referenced by operator=().