WSF
Task.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI//REL TO USA ONLY
3//
4// The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
5//
6// Copyright 2003-2015 The Boeing Company. All rights reserved.
7//
8// The use, dissemination or disclosure of data in this file is subject to
9// limitation or restriction. See accompanying README and LICENSE for details.
10// ****************************************************************************
11// ****************************************************************************
12// Updated by Infoscitex, a DCS Company
13// ****************************************************************************
14
15#ifndef TASK_HPP
16#define TASK_HPP
17
18class WsfScenario;
19
20
21namespace engage
22{
23
24class InputConfig;
25class RunConfig;
26class TaskOutput;
27
46class Task
47{
48public:
50 : mRunConfigPtr(nullptr)
51 , mTaskIndex(-1)
52 , mTargetIndex(-1)
53 , mSiteIndex(-1)
54 , mRepetition(-1)
55 , mThreadId(-1)
56 , mTaskOutputPtr(nullptr)
57 {
58 }
59
60 Task(const RunConfig& aRunConfig, int aTaskIndex, int aTargetIndex, int aSiteIndex, int aRepetition)
61 : mRunConfigPtr(&aRunConfig)
62 , mTaskIndex(aTaskIndex)
63 , mTargetIndex(aTargetIndex)
64 , mSiteIndex(aSiteIndex)
65 , mRepetition(aRepetition)
66 , mThreadId(-1)
67 , mTaskOutputPtr(nullptr)
68 {
69 }
70
71 const RunConfig& GetRunConfig() const { return *mRunConfigPtr; }
72 int GetTaskIndex() const { return mTaskIndex; }
73 int GetTargetIndex() const { return mTargetIndex; }
74 int GetSiteIndex() const { return mSiteIndex; }
75 int GetRepetition() const { return mRepetition; }
76
77 void Execute(int aThreadId, WsfScenario& aScenario, const InputConfig& aInputConfig);
78
79 int GetThreadId() const { return mThreadId; }
80 TaskOutput& GetTaskOutput() const { return *mTaskOutputPtr; }
81
82private:
83 const RunConfig* mRunConfigPtr;
84 int mTaskIndex;
85 int mTargetIndex;
86 int mSiteIndex;
87 int mRepetition;
88
89 int mThreadId;
90 TaskOutput* mTaskOutputPtr;
91};
92
93} // namespace engage
94
95#endif
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
Definition InputConfig.hpp:33
Definition RunConfig.hpp:33
This class is the run-time output controller for the tasks.
Definition TaskOutput.hpp:42
TaskOutput & GetTaskOutput() const
Definition Task.hpp:80
int GetRepetition() const
Definition Task.hpp:75
int GetTaskIndex() const
Definition Task.hpp:72
int GetThreadId() const
Definition Task.hpp:79
int GetSiteIndex() const
Definition Task.hpp:74
const RunConfig & GetRunConfig() const
Definition Task.hpp:71
int GetTargetIndex() const
Definition Task.hpp:73
void Execute(int aThreadId, WsfScenario &aScenario, const InputConfig &aInputConfig)
Definition Task.cpp:39
Task(const RunConfig &aRunConfig, int aTaskIndex, int aTargetIndex, int aSiteIndex, int aRepetition)
Definition Task.hpp:60
Task()
Definition Task.hpp:49
Definition ApplicationExtension.cpp:26
Copyrights Multiple, All Rights Reserved