WSF
Radius.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 RADIUS_HPP
13#define RADIUS_HPP
14
15#include "usmtf_export.h"
16
17#include <string>
18
19#include "FFIRN_Validator.hpp"
20#include "RangeValidator.hpp"
21#include "UtCast.hpp"
22
23namespace usmtf
24{
29
31
43class USMTF_EXPORT Radius : public RangeValidator<double>
44{
45public:
46 Radius();
47 bool ParseAndValidate(const Field& aField) override;
48 const std::string& GetRadiusValue() const noexcept;
49 const std::string& GetUnitOfMeasure() const noexcept;
53 const double GetRadiusInMeters() const noexcept;
54 const double GetRadiusInMeters(double aRadius) const noexcept;
55 const double GetRadius() const noexcept;
56
57protected:
58 bool IsValidRadius() noexcept;
59 bool IsValidUnitOfMeasureForRadius(const std::string& aUom) noexcept;
60 std::string mRadiusValue;
61 std::string mUnitOfMeasure;
63};
64} // namespace usmtf
65#endif
Definition Field.hpp:48
Radius()
Definition Radius.cpp:21
bool ParseAndValidate(const Field &aField) override
Definition Radius.cpp:27
const std::string & GetRadiusValue() const noexcept
Definition Radius.cpp:33
const double GetRadiusInMeters() const noexcept
Definition Radius.cpp:98
std::string mUnitOfMeasure
Definition Radius.hpp:61
const std::string & GetUnitOfMeasure() const noexcept
Definition Radius.cpp:38
bool IsValidRadius() noexcept
Definition Radius.cpp:108
double mRadiusDouble
Definition Radius.hpp:62
bool IsValidUnitOfMeasureForRadius(const std::string &aUom) noexcept
Definition Radius.cpp:159
const double GetRadius() const noexcept
Definition Radius.cpp:103
std::string mRadiusValue
Definition Radius.hpp:60
Definition RangeValidator.hpp:28
Definition Acmid.cpp:17
Copyrights Multiple, All Rights Reserved