WSF
Polyarc.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 POLYARC_HPP
13#define POLYARC_HPP
14
15#include "usmtf_export.h"
16
17#include <memory>
18#include <string>
19
20#include "Field.hpp"
21#include "LatLon.hpp"
22#include "Polygon.hpp"
23#include "Radarc.hpp"
24#include "RadialBearing.hpp"
25#include "Radius.hpp"
26#include "Set.hpp"
27#include "UtLLPos.hpp"
28
29namespace usmtf
30{
42
46
58class USMTF_EXPORT Polyarc : public Set
59{
60public:
61 Polyarc(const std::string& aSTF, const std::vector<Field>& aFields) noexcept;
62 const Radarc* GetRadarc() const noexcept;
63 const Polygon* GetPolygon() const noexcept;
64
65private:
66 bool IsRadarcAndPolygonValid();
67 // We are using unique ptr here to defer instantiation .
68 std::unique_ptr<Radarc> mRadarc;
69 std::unique_ptr<Polygon> mPolygon;
70};
71} // namespace usmtf
72#endif
const Radarc * GetRadarc() const noexcept
Definition Polyarc.cpp:36
const Polygon * GetPolygon() const noexcept
Definition Polyarc.cpp:41
Polyarc(const std::string &aSTF, const std::vector< Field > &aFields) noexcept
Definition Polyarc.cpp:20
Definition Polygon.hpp:51
Definition Radarc.hpp:50
Set(const std::string &aSTF, const std::vector< Field > &aFields) noexcept
Definition Set.cpp:22
Definition Acmid.cpp:17
Copyrights Multiple, All Rights Reserved