Main CAM access implementation header.
More...
Go to the source code of this file.
|
template<typename T1, typename T2> |
void | etsi_its_cam_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_cam_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_cam_msgs::access::etsi_its_msgs::getLeapSecondInsertionsSince2004 (const uint64_t unix_seconds) |
| Get the leap second insertions since 2004 for given unix seconds.
|
|
TimestampIts | etsi_its_cam_msgs::access::getTimestampITSFromGenerationDeltaTime (const GenerationDeltaTime &generation_delta_time, const TimestampIts ×tamp_estimate) |
| Get the TimestampITS from a given GenerationDeltaTime object.
|
|
uint64_t | etsi_its_cam_msgs::access::getUnixNanosecondsFromGenerationDeltaTime (const GenerationDeltaTime &generation_delta_time, const TimestampIts ×tamp_estimate, const uint16_t n_leap_seconds=etsi_its_msgs::LEAP_SECOND_INSERTIONS_SINCE_2004.end() ->second) |
| Get the Unix-Nanoseconds from a given GenerationDeltaTime object.
|
|
uint64_t | etsi_its_cam_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.end() ->second) |
| Get the Unix Nanoseconds from Generation Delta Time object.
|
|
Main CAM access implementation header.
Definition in file cam_access.h.
◆ getLeapSecondInsertionsSince2004()
uint16_t etsi_its_cam_msgs::access::etsi_its_msgs::getLeapSecondInsertionsSince2004 |
( |
const uint64_t | unix_seconds | ) |
|
|
inline |
Get the leap second insertions since 2004 for given unix seconds.
- Parameters
-
unix_seconds | the current unix seconds for that the leap second insertions since 2004 shall be provided |
- Returns
- uint16_t the number of leap second insertions since 2004 for unix_seconds
Definition at line 61 of file cam_access.h.
◆ getTimestampITSFromGenerationDeltaTime()
TimestampIts etsi_its_cam_msgs::access::getTimestampITSFromGenerationDeltaTime |
( |
const GenerationDeltaTime & | generation_delta_time, |
|
|
const TimestampIts & | timestamp_estimate ) |
|
inline |
Get the TimestampITS from a given GenerationDeltaTime object.
- Parameters
-
generation_delta_time | the GenerationDeltaTime object to get the TimestampITS from |
timestamp_estimate | estimated time to calculate the corresponding generation from |
- Returns
- TimestampIts the corresponding TimestampITS object
Definition at line 83 of file cam_access.h.
139 {
141}
Utility functions for the ETSI ITS CAM (EN and TS)
◆ getUnixNanosecondsFromGenerationDeltaTime() [1/2]
uint64_t etsi_its_cam_msgs::access::getUnixNanosecondsFromGenerationDeltaTime |
( |
const GenerationDeltaTime & | generation_delta_time, |
|
|
const TimestampIts & | timestamp_estimate, |
|
|
const uint16_t | n_leap_seconds = etsi_its_msgs::LEAP_SECOND_INSERTIONS_SINCE_2004.end()->second ) |
|
inline |
Get the Unix-Nanoseconds from a given GenerationDeltaTime object.
- Parameters
-
generation_delta_time | the GenerationDeltaTime object to get the Unix-Nanoseconds from |
timestamp_estimate | estimated time to calculate the corresponding generation from |
n_leap_seconds | number of leap-seconds since 2004. (Default: etsi_its_msgs::LEAP_SECOND_INSERTIONS_SINCE_2004.end()->second) |
- Returns
- uint64_t the corresponding Unix-Nanoseconds
Definition at line 99 of file cam_access.h.
◆ getUnixNanosecondsFromGenerationDeltaTime() [2/2]
uint64_t etsi_its_cam_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.end()->second ) |
|
inline |
Get the Unix Nanoseconds from Generation Delta Time object.
- Parameters
-
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 |
- Returns
- uint64_t the corresponding Unix-Nanoseconds
Definition at line 113 of file cam_access.h.
◆ throwIfNotPresent()
void etsi_its_cam_msgs::access::throwIfNotPresent |
( |
const bool | is_present, |
|
|
const std::string | val_desc ) |
|
inline |
Throws an exception if the given value is not present.
- Parameters
-
is_present | Whether the value is present. |
val_desc | Description of the value for the exception message. |
Definition at line 58 of file cam_access.h.
◆ throwIfOutOfRange()
template<typename T1, typename T2>
void etsi_its_cam_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.
- Template Parameters
-
- Parameters
-
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 cam_access.h.
◆ LEAP_SECOND_INSERTIONS_SINCE_2004
const std::map< uint64_t, uint16_t > etsi_its_cam_msgs::access::etsi_its_msgs::LEAP_SECOND_INSERTIONS_SINCE_2004 |
Initial value:{
{UNIX_SECONDS_2004, 0},
{1136073599, 1},
{1230767999, 2},
{1341100799, 3},
{1435708799, 4},
{1483228799, 5}
}
std::map that stores all leap second insertions since 2004 with the corresponding unix-date of the insertion
Definition at line 46 of file cam_access.h.
◆ UNIX_SECONDS_2004
const uint64_t etsi_its_cam_msgs::access::etsi_its_msgs::UNIX_SECONDS_2004 = 1072915200 |