WSF
APeriod.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 APERIOD_HPP
13#define APERIOD_HPP
14
15#include "usmtf_export.h"
16
17#include <string>
18
19#include "AirspaceTimeMode.hpp"
20#include "Field.hpp"
21#include "IntervalDuration.hpp"
22#include "IntervalFrequency.hpp"
23#include "Set.hpp"
24#include "TimePoint.hpp"
25
26
27namespace usmtf
28{
32
37
40class USMTF_EXPORT APeriod : public Set
41{
42public:
43 APeriod(const std::string& aSTF, const std::vector<Field>& aFields) noexcept;
44 const AirspaceTimeMode& GetAirspaceTimeMode() const noexcept;
45 const TimePoint& GetBeginningTime() const noexcept;
46 const TimePoint& GetEndingTime() const noexcept;
47 const IntervalFrequency& GetIntervalFrequency() const noexcept;
48 const IntervalDuration& GetIntervalDuration() const noexcept;
49
50private:
51 bool IsIntervalFrequencyValid();
52 bool IsIntervalDurationValid();
53 AirspaceTimeMode mAirSpaceTimeMode;
54 TimePoint mBeginningTime;
55 TimePoint mEndingTime = TimePoint{true};
56 IntervalDuration mIntervalDuration;
57 IntervalFrequency mIntervalFrequency;
58};
59} // namespace usmtf
60
61#endif
const TimePoint & GetEndingTime() const noexcept
Definition APeriod.cpp:62
const IntervalFrequency & GetIntervalFrequency() const noexcept
Definition APeriod.cpp:67
const AirspaceTimeMode & GetAirspaceTimeMode() const noexcept
Definition APeriod.cpp:52
const IntervalDuration & GetIntervalDuration() const noexcept
Definition APeriod.cpp:72
APeriod(const std::string &aSTF, const std::vector< Field > &aFields) noexcept
Definition APeriod.cpp:25
const TimePoint & GetBeginningTime() const noexcept
Definition APeriod.cpp:57
Definition AirspaceTimeMode.hpp:39
Definition IntervalDuration.hpp:45
Definition IntervalFrequency.hpp:40
Set(const std::string &aSTF, const std::vector< Field > &aFields) noexcept
Definition Set.cpp:22
Definition TimePoint.hpp:32
Definition Acmid.cpp:17
Copyrights Multiple, All Rights Reserved