WSF
Aco.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI
3//
4// The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
5//
6// Copyright 2019 Infoscitex, a DCS 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#ifndef ACO_HPP
13#define ACO_HPP
14
15#include "usmtf_export.h"
16
17#include <memory>
18
19#include "Comment.hpp"
20#include "InputBuilder.hpp"
21#include "Message.hpp"
22#include "Zone.hpp"
23
24namespace usmtf
25{
34
39
44
47class USMTF_EXPORT Aco : public Message
48{
49public:
50 Aco(const std::string& aMTF, std::vector<std::unique_ptr<Set>>&& aSets) noexcept;
52 std::vector<const Zone*> GetZones() const noexcept;
54 const Comment* GetHeader() const noexcept;
55
56private:
58 void BuildZoneList() noexcept;
60 void BuildHeader() noexcept;
61 std::vector<std::unique_ptr<Zone>> mZones;
62 std::unique_ptr<Comment> mComments;
63};
64
66USMTF_EXPORT void ExportAco(const Aco& aAco, InputBuilder& ib);
67} // namespace usmtf
68
69#endif
Definition Aco.hpp:48
Aco(const std::string &aMTF, std::vector< std::unique_ptr< Set > > &&aSets) noexcept
Definition Aco.cpp:25
const Comment * GetHeader() const noexcept
Get other relevant sets that are not zones but are useful as comments for Scenario Designers.
Definition Aco.cpp:105
std::vector< const Zone * > GetZones() const noexcept
Get the zones that are extracted from the parsed ACO.
Definition Aco.cpp:94
Definition Comment.hpp:23
Definition InputBuilder.hpp:37
Message(const std::string &aMTF, std::vector< std::unique_ptr< Set > > aSets) noexcept
Definition Message.cpp:22
Definition Acmid.cpp:17
void ExportAco(const Aco &aAco, InputBuilder &aIb)
Exports the Aco to scenario lay down file indicated by the target InputBuilder.
Definition Aco.cpp:110
Copyrights Multiple, All Rights Reserved