#pragma once /**************************************************************************************** * * * MOUNT CONTROL COMPONENTS LIBRARY * * * * * * LIBRARY-WIDE CONSTANTS * * * ****************************************************************************************/ #include #include "mcc_traits.h" namespace mcc { constexpr double MCC_HALF_PI = std::numbers::pi / 2.0; constexpr double MCC_TWO_PI = std::numbers::pi * 2.0; static constexpr double MCC_SIDERAL_TO_UT1_RATIO = 1.002737909350795; // sideral/UT1 // a value to represent of infinite time duration according to type of duration representation template static constexpr DT MCC_INFINITE_DURATION_V = std::floating_point ? DT{std::numeric_limits::infinity()} : DT{std::numeric_limits::max()}; // serializer/deserializer delimiters // delimiter between items of serializing values sequence static constexpr std::string_view MCC_DEFAULT_SEQ_DELIMITER{";"}; // delimiter between items of aggregative (multi-element) serializing value static constexpr std::string_view MCC_DEFAULT_ELEM_DELIMITER{","}; } // namespace mcc