WSF
WsfQuantumTask Class Reference

#include <WsfQuantumTask.hpp>

Inheritance diagram for WsfQuantumTask:
Collaboration diagram for WsfQuantumTask:

Public Member Functions

 WsfQuantumTask (double aPriority=1.0, const WsfTaskResource &aResource=std::move(WsfTaskResource()), WsfTrack *aTrackPtr=nullptr)
 WsfQuantumTask (const WsfQuantumTask &aSrc)=default
WsfQuantumTaskoperator= (const WsfQuantumTask &)=delete
 ~WsfQuantumTask () override=default
virtual WsfQuantumTaskClone () const
const char * GetScriptClassName () const override
double GetPriority ()
void SetPriority (double aVal)
bool operator== (const WsfQuantumTask &aRhs) const
void SetUniqueId (unsigned int aUniqueId)
unsigned int GetUniqueId () const
 operator unsigned int () const
Public Member Functions inherited from WsfTask
 WsfTask ()
 WsfTask (const WsfTask &aSrc)
 WsfTask (const WsfTaskResource &aTaskResource)
WsfTaskoperator= (const WsfTask &aRhs)
 ~WsfTask () override=default
bool operator== (const WsfTask &aRhs) const
bool operator!= (const WsfTask &aRhs) const
const char * GetScriptClassName () const override
void Initialize (double aSimTime, unsigned long aTaskId, WsfProcessor *aAssignerPtr)
unsigned int GetTaskId () const
 Return the task ID assigned to the task.
const WsfTrackIdGetTrackId () const
void SetTrackId (const WsfTrackId &aTrackId)
const WsfTrackIdGetLocalTrackId () const
void SetLocalTrackId (const WsfTrackId &aLocalTrackId)
WsfStringId GetTaskType () const
void SetTaskType (WsfStringId aTaskType)
WsfStringId GetTargetName () const
void SetTargetName (WsfStringId aTargetName)
 Set the name of the target.
void SetAssigner (const WsfTask &aTask)
WsfStringId GetAssignerPlatformName () const
size_t GetAssignerPlatformIndex () const
WsfStringId GetAssignerProcessorName () const
void SetAssignee (WsfPlatform *aAssigneePtr)
WsfStringId GetAssigneePlatformName () const
size_t GetAssigneePlatformIndex () const
WsfStringId GetAssigneeProcessorName () const
void SetAssigneeProcessorName (WsfStringId aAssigneeProcessorName)
WsfTaskResourceGetResource ()
const WsfTaskResourceGetResource () const
void SetResource (const WsfTaskResource &aResource)
WsfStringId GetResourceName () const
void SetResourceName (WsfStringId aResourceName)
int GetResourceType () const
bool IsResourceTypeOf (const int aResourceType) const
WsfStringId GetResourceMode () const
void SetResourceMode (WsfStringId aResourceMode)
WsfStringId GetCommName () const
void SetCommName (WsfStringId aCommName)
void SetUpdateTime (double aUpdateTime)
double GetUpdateTime () const
void SetAssignTime (double aAssignTime)
double GetAssignTime () const
void SetStatus (WsfStringId aStatusId)
WsfStringId GetStatus () const
void SetSubStatus (WsfStringId aSubStatusId)
WsfStringId GetSubStatus () const
int GetObjectsPending () const
 Return the number of objects that have been assigned but not yet in operation.
void SetObjectsPending (int aObjectsPending)
 Set the number of objects that have been assigned but not yet in operation.
void SetAssignerPlatformIndex (size_t aIndex)
void SetAssigneePlatformIndex (size_t aIndex)
Public Member Functions inherited from WsfTaskData
 WsfTaskData ()
 WsfTaskData (const WsfTaskData &aSrc)
 WsfTaskData (const WsfTaskResource &aTaskResource)
WsfTaskDataoperator= (const WsfTaskData &aRhs)
virtual ~WsfTaskData ()
template<typename T>
void SerializeP (T &aBuff)
 For XIO (de)serialization.
Public Member Functions inherited from WsfAuxDataEnabled
 WsfAuxDataEnabled ()=default
 WsfAuxDataEnabled (const WsfAuxDataEnabled &aSrc)=default
WsfAuxDataEnabledoperator= (const WsfAuxDataEnabled &aRhs)
 WsfAuxDataEnabled (WsfAuxDataEnabled &&)=default
WsfAuxDataEnabledoperator= (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
WsfAttributeContainerGetAuxData ()
const WsfAttributeContainerGetAuxData () const noexcept
const WsfAttributeContainerGetAuxDataConst () const noexcept

Static Public Member Functions

static std::unique_ptr< UtScriptClass > CreateScriptClass (const std::string &aClassName, UtScriptTypes *aScriptTypesPtr)
static unsigned int GetUniqueId (WsfTask &aTask)
static unsigned int ReverseBits (unsigned int x)
Static Public Member Functions inherited from WsfTask
static void RegisterScriptTypes (UtScriptTypes *aScriptTypesPtr)

Additional Inherited Members

Public Attributes inherited from WsfTaskData
unsigned int mTaskId
 The serial number of the task.
WsfTrackId mTrackId
WsfTrackId mLocalTrackId
WsfStringId mTaskType
 The task type (string ID).
WsfStringId mTargetName
 The name of the target (string ID) IF it is known.
WsfStringId mAssignerPlatformName
 The name of the assigning platform (string ID).
size_t mAssignerPlatformIndex
 The platform index of the assigning platform.
WsfStringId mAssignerProcessorName
 The name of the processor on the assigning platform (string ID).
WsfStringId mAssigneePlatformName
 The name of the assigned platform (string ID).
size_t mAssigneePlatformIndex
 The platform index of the assigned platform.
WsfStringId mAssigneeProcessorName
 The name of the processor on the assigned platform (string ID).
WsfTaskResourcemResourcePtr
 Attributes of the assigned resource.
WsfStringId mCommName
double mAssignTime
 The simulation time when the assignment was made.
double mUpdateTime
 The simulation time when an update was last sent or received.
int mObjectsPending
 The number of objects that are pending (requested but not yet in operation).
WsfStringId mTaskStatus
 Task status.
WsfStringId mTaskSubStatus
 Task sub status reported by assignee. (User Defined).
Static Public Attributes inherited from WsfAuxDataEnabled
static UtCallbackListN< void(const WsfAuxDataEnabled *)> AuxDataAccessed
static UtCallbackListN< void(const WsfAuxDataEnabled *)> AuxDataDestroyed

Detailed Description

WsfQuantumTask adds two data fields to a WsfTask: priority and unique id both are able to be set by the user, so technically the unique id might not be unique by default the unique id is a combination of the target track id and the task resource type

Constructor & Destructor Documentation

◆ WsfQuantumTask() [1/2]

WsfQuantumTask::WsfQuantumTask ( double aPriority = 1.0,
const WsfTaskResource & aResource = std::move(WsfTaskResource()),
WsfTrack * aTrackPtr = nullptr )

If a track is not provided, the unique id of the task can not be automatically generated, then the creator should call SetUniqueId() if the task is to have a unique id.

References WsfTrack::GetTargetName(), WsfTrack::GetTrackId(), GetUniqueId(), WsfTaskData::mTaskId, WsfTask::SetLocalTrackId(), WsfTask::SetTargetName(), WsfTask::SetTrackId(), and WsfTask::WsfTask().

Referenced by Clone(), operator=(), operator==(), WsfQuantumTask(), and ~WsfQuantumTask().

◆ WsfQuantumTask() [2/2]

WsfQuantumTask::WsfQuantumTask ( const WsfQuantumTask & aSrc)
default

References WsfQuantumTask().

◆ ~WsfQuantumTask()

WsfQuantumTask::~WsfQuantumTask ( )
overridedefault

References Clone(), and WsfQuantumTask().

Member Function Documentation

◆ Clone()

WsfQuantumTask * WsfQuantumTask::Clone ( ) const
virtual

◆ CreateScriptClass()

std::unique_ptr< UtScriptClass > WsfQuantumTask::CreateScriptClass ( const std::string & aClassName,
UtScriptTypes * aScriptTypesPtr )
static

◆ GetPriority()

double WsfQuantumTask::GetPriority ( )
inline

◆ GetScriptClassName()

const char * WsfQuantumTask::GetScriptClassName ( ) const
inlineoverride

◆ GetUniqueId() [1/2]

◆ GetUniqueId() [2/2]

unsigned int WsfQuantumTask::GetUniqueId ( WsfTask & aTask)
inlinestatic

◆ operator unsigned int()

WsfQuantumTask::operator unsigned int ( ) const
inline

References GetUniqueId().

◆ operator=()

WsfQuantumTask & WsfQuantumTask::operator= ( const WsfQuantumTask & )
delete

References WsfQuantumTask().

◆ operator==()

bool WsfQuantumTask::operator== ( const WsfQuantumTask & aRhs) const
inline

◆ ReverseBits()

unsigned int WsfQuantumTask::ReverseBits ( unsigned int x)
inlinestatic

Referenced by GetUniqueId().

◆ SetPriority()

void WsfQuantumTask::SetPriority ( double aVal)
inline

◆ SetUniqueId()

void WsfQuantumTask::SetUniqueId ( unsigned int aUniqueId)
inline

References WsfTaskData::mTaskId.


The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved