34namespace etsi_its_cam_ts_msgs::access {
47inline void setItsPduHeader(CAM& cam,
const uint32_t station_id,
const uint8_t protocol_version = 0) {
48 setItsPduHeader(cam.header, MessageId::CAM, station_id, protocol_version);
60inline void setRefPosConfidence(CAM& cam,
const std::array<double, 4>& covariance_matrix,
const double object_heading) {
62 double orientation = object_heading * 180 / M_PI;
64 orientation = std::fmod(orientation + 360, 360);
65 while (orientation < 0) {
68 while (orientation >= 360) {
73 covariance_matrix, object_heading);
Common setter functions for the ETSI ITS CAM (EN and TS)
void setWGSRefPosConfidence(CAM &cam, const std::array< double, 4 > &covariance_matrix)
Set the confidence of the reference position.
void setPositionConfidenceEllipse(PositionConfidenceEllipse &position_confidence_ellipse, const double semi_major_axis, const double semi_minor_axis, const double orientation)
Set the Position Confidence Ellipse object.
void setHeading(CAM &cam, const double heading_val, const double confidence=std::numeric_limits< double >::infinity())
Set the Heading for a CAM.
void setWGSPositionConfidenceEllipse(PositionConfidenceEllipse &position_confidence_ellipse, const std::array< double, 4 > &covariance_matrix)
Set the Position Confidence Ellipse object.
void setItsPduHeader(ItsPduHeader &header, const uint8_t message_id, const uint32_t station_id, const uint8_t protocol_version=0)
Set the Its Pdu Header object.
Setter functions for the ETSI ITS Common Data Dictionary (CDD) v2.1.1.