Main MCM access implementation header. More...
#include <cstring>#include <iostream>#include <map>#include <GeographicLib/UTMUPS.hpp>#include <etsi_its_msgs_utils/impl/constants.h>#include <etsi_its_msgs_utils/impl/mcm/mcm_getters.h>#include <etsi_its_msgs_utils/impl/mcm/mcm_setters.h>#include <etsi_its_msgs_utils/impl/mcm/mcm_utils.h>Go to the source code of this file.
Functions | |
| template<typename T1, typename T2> | |
| void | etsi_its_mcm_uulm_msgs::access::throwIfOutOfRange (const T1 &val, const T2 &min, const T2 &max, const std::string val_desc) |
| Throws an exception if a given value is out of a defined range. | |
| void | etsi_its_mcm_uulm_msgs::access::throwIfNotPresent (const bool is_present, const std::string val_desc) |
| Throws an exception if the given value is not present. | |
| uint16_t | etsi_its_mcm_uulm_msgs::access::etsi_its_msgs::getLeapSecondInsertionsSince2004 (const uint64_t unix_seconds) |
| Get the leap second insertions since 2004 for given unix seconds. | |
| uint64_t | etsi_its_mcm_uulm_msgs::access::getUnixNanosecondsFromGenerationDeltaTime (const GenerationDeltaTime &generation_delta_time, const uint64_t unix_timestamp_estimate, const uint16_t n_leap_seconds=etsi_its_msgs::LEAP_SECOND_INSERTIONS_SINCE_2004.rbegin() ->second) |
| Get the Unix Nanoseconds from Generation Delta Time object. | |
Variables | |
| const uint64_t | etsi_its_mcm_uulm_msgs::access::etsi_its_msgs::UNIX_SECONDS_2004 = 1072915200 |
| const std::map< uint64_t, uint16_t > | etsi_its_mcm_uulm_msgs::access::etsi_its_msgs::LEAP_SECOND_INSERTIONS_SINCE_2004 |
| std::map that stores all leap second insertions since 2004 with the corresponding unix-date of the insertion | |
| constexpr const double | etsi_its_mcm_uulm_msgs::access::etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR = 2.0 |
| constexpr const double | etsi_its_mcm_uulm_msgs::access::etsi_its_msgs::TWO_D_GAUSSIAN_FACTOR = 2.4477 |
Main MCM access implementation header.
Definition in file mcm_access.h.
| #define ETSI_ITS_MSGS_UTILS_IMPL_MCM_MCM_UTILS_H |
Definition at line 96 of file mcm_access.h.
|
inline |
Get the leap second insertions since 2004 for given unix seconds.
| unix_seconds | the current unix seconds for that the leap second insertions since 2004 shall be provided |
Definition at line 61 of file mcm_access.h.
|
inline |
Get the Unix Nanoseconds from Generation Delta Time object.
| generation_delta_time | the GenerationDeltaTime object to get the Unix-Nanoseconds from |
| unix_timestamp_estimate | estimated unix-time (in Nanoseconds) to calculate the corresponding generation from |
| n_leap_seconds | number of leap-seconds since 2004. (Defaults to the todays number of leap seconds since 2004.) |
Definition at line 106 of file mcm_access.h.
|
inline |
Throws an exception if the given value is not present.
| is_present | Whether the value is present. |
| val_desc | Description of the value for the exception message. |
Definition at line 58 of file mcm_access.h.
| void etsi_its_mcm_uulm_msgs::access::throwIfOutOfRange | ( | const T1 & | val, |
| const T2 & | min, | ||
| const T2 & | max, | ||
| const std::string | val_desc ) |
Throws an exception if a given value is out of a defined range.
| T1 | |
| T2 |
| val | The value to check if it is in the range. |
| min | The minimum value of the range. |
| max | The maximum value of the range. |
| val_desc | Description of the value for the exception message. |
Definition at line 47 of file mcm_access.h.
| const std::map<uint64_t, uint16_t> etsi_its_mcm_uulm_msgs::access::etsi_its_msgs::LEAP_SECOND_INSERTIONS_SINCE_2004 |
std::map that stores all leap second insertions since 2004 with the corresponding unix-date of the insertion
Definition at line 46 of file mcm_access.h.
|
constexpr |
Definition at line 72 of file mcm_access.h.
|
constexpr |
Definition at line 76 of file mcm_access.h.
| const uint64_t etsi_its_mcm_uulm_msgs::access::etsi_its_msgs::UNIX_SECONDS_2004 = 1072915200 |
Definition at line 40 of file mcm_access.h.