WSF
Period.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 PERIOD_HPP
13#define PERIOD_HPP
14
15#include "usmtf_export.h"
16
17#include <memory>
18#include <string>
19
20#include "Field.hpp"
21#include "Set.hpp"
22#include "VerifiedTimePoint.hpp"
23
24namespace usmtf
25{
28
33
37
40class USMTF_EXPORT Period : public Set
41{
42public:
43 Period(const std::string& aSTF, const std::vector<Field>& aFields) noexcept;
44 const VerifiedTimePoint& GetStartTime() const noexcept;
45 const VerifiedTimePoint& GetStopTime() const noexcept;
46 const VerifiedTimePoint& GetStopTimeModifier() const noexcept;
47
48private:
49 bool IsValidStopTimeModifier();
50 bool DoesStopTimeRequireModifier(const std::string& stopTime) const noexcept;
51 VerifiedTimePoint mStartTime;
52 VerifiedTimePoint mStopTime = VerifiedTimePoint{true};
53 VerifiedTimePoint mStopTimeModifier;
54};
55} // namespace usmtf
56#endif
const VerifiedTimePoint & GetStartTime() const noexcept
Definition Period.cpp:44
const VerifiedTimePoint & GetStopTimeModifier() const noexcept
Definition Period.cpp:54
Period(const std::string &aSTF, const std::vector< Field > &aFields) noexcept
Definition Period.cpp:21
const VerifiedTimePoint & GetStopTime() const noexcept
Definition Period.cpp:49
Set(const std::string &aSTF, const std::vector< Field > &aFields) noexcept
Definition Set.cpp:22
Same as TimePoint.hpp (see it) but with a few extra verification validations.
Definition VerifiedTimePoint.hpp:27
Definition Acmid.cpp:17
Copyrights Multiple, All Rights Reserved