WSF
OutputConfig.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 OUTPUTCONFIG_HPP
16#define OUTPUTCONFIG_HPP
17
18#include <list>
19#include <string>
20
21class UtInput;
22
23#include "Constants.hpp"
24#include "EventItem.hpp"
25#include "OutputItem.hpp"
26#include "OutputRate.hpp"
27
28namespace engage
29{
30
33{
34public:
35 typedef std::list<OutputItem> ItemList;
36 typedef std::list<EventItem> EventItems;
37
45
47
48 bool ProcessInput(UtInput& aInput);
49
50 void SetFileName(const std::string& aFileName) { mFileName = aFileName; }
51 void SetFormat(Format aFormat) { mFormat = aFormat; }
52 void SetPhase(Phase aPhase) { mPhase = aPhase; }
53 void SetEventOutput(bool aEventOutput) { mEventOutput = aEventOutput; }
54 void SetSummaryOutput(bool aSummaryOutput) { mSummaryOutput = aSummaryOutput; }
55 void SetRateTableName(const std::string& aRateTableName) { mRateTableName = aRateTableName; }
56 void SetRateTable(const OutputRate& aRateTable) { mRateTable = aRateTable; }
57 void AddOutputItem(const OutputItem& aItem) { mOutputItems.push_back(aItem); }
58
59 std::string GetFileName() const { return mFileName; }
60 Format GetFormat() const { return mFormat; }
61 Phase GetPhase() const { return mPhase; }
62 bool DoEventOutput() const { return mEventOutput; }
63 bool DoSummaryOutput() const { return mSummaryOutput; }
64 std::string GetRateTableName() const { return mRateTableName; }
65 const ItemList& GetOutputItems() const { return mOutputItems; }
66 const EventItems& GetEventItems() const { return mEventItems; }
67
68 bool DoPeriodicOutput(Phase aPhase, double aSimTime, double aLastOutputTime) const;
69
70private:
71 std::string mFileName;
72 Format mFormat;
73 Phase mPhase;
74 bool mEventOutput;
75 bool mSummaryOutput;
76 std::string mRateTableName;
77 OutputRate mRateTable;
78 ItemList mOutputItems;
79 EventItems mEventItems;
80};
81
82} // namespace engage
83
84#endif
Phase GetPhase() const
Definition OutputConfig.hpp:61
void SetFormat(Format aFormat)
Definition OutputConfig.hpp:51
void AddOutputItem(const OutputItem &aItem)
Definition OutputConfig.hpp:57
bool DoPeriodicOutput(Phase aPhase, double aSimTime, double aLastOutputTime) const
Definition OutputConfig.cpp:129
const ItemList & GetOutputItems() const
Definition OutputConfig.hpp:65
OutputConfig()
Definition OutputConfig.cpp:26
Format GetFormat() const
Definition OutputConfig.hpp:60
void SetEventOutput(bool aEventOutput)
Definition OutputConfig.hpp:53
void SetFileName(const std::string &aFileName)
Definition OutputConfig.hpp:50
Format
Output format for the slot.
Definition OutputConfig.hpp:40
@ cBLOCK
ESAMS block format.
Definition OutputConfig.hpp:42
@ cMINIMAL
ESAMS minimal format.
Definition OutputConfig.hpp:41
@ cCOLUMN
ESAMS column format.
Definition OutputConfig.hpp:43
bool DoEventOutput() const
Definition OutputConfig.hpp:62
bool DoSummaryOutput() const
Definition OutputConfig.hpp:63
void SetSummaryOutput(bool aSummaryOutput)
Definition OutputConfig.hpp:54
const EventItems & GetEventItems() const
Definition OutputConfig.hpp:66
void SetRateTable(const OutputRate &aRateTable)
Definition OutputConfig.hpp:56
bool ProcessInput(UtInput &aInput)
Definition OutputConfig.cpp:39
std::string GetRateTableName() const
Definition OutputConfig.hpp:64
void SetRateTableName(const std::string &aRateTableName)
Definition OutputConfig.hpp:55
std::string GetFileName() const
Definition OutputConfig.hpp:59
std::list< OutputItem > ItemList
Definition OutputConfig.hpp:35
void SetPhase(Phase aPhase)
Definition OutputConfig.hpp:52
std::list< EventItem > EventItems
Definition OutputConfig.hpp:36
Definition OutputItem.hpp:35
Defines a table of simulation output rate as a function of simulation time.
Definition OutputRate.hpp:28
Definition ApplicationExtension.cpp:26
Phase
An enumeration that defines the current phase of the simulation, or the applicable phase of an output...
Definition Constants.hpp:23
Copyrights Multiple, All Rights Reserved