etsi_its_messages v3.3.0
 
Loading...
Searching...
No Matches
cam_getters.h File Reference

Getter functions for the ETSI ITS CAM (EN) More...

Go to the source code of this file.

Functions

uint32_t etsi_its_cam_msgs::access::getStationID (const ItsPduHeader &header)
 Get the StationID of ItsPduHeader.
 
double etsi_its_cam_msgs::access::getLatitude (const Latitude &latitude)
 Get the Latitude value.
 
double etsi_its_cam_msgs::access::getLongitude (const Longitude &longitude)
 Get the Longitude value.
 
double etsi_its_cam_msgs::access::getAltitude (const Altitude &altitude)
 Get the Altitude value.
 
double etsi_its_cam_msgs::access::getSpeed (const Speed &speed)
 Get the vehicle speed.
 
double etsi_its_cam_msgs::access::getSpeedConfidence (const Speed &speed)
 Get the Speed Confidence.
 
template<typename AccelerationMagnitude>
double etsi_its_cam_msgs::access::getAccelerationMagnitude (const AccelerationMagnitude &acceleration_magnitude)
 Get the AccelerationMagnitude value.
 
template<typename AccelerationMagnitude>
double etsi_its_cam_msgs::access::getAccelerationMagnitudeConfidence (const AccelerationMagnitude &acceleration_magnitude)
 Get the AccelerationMagnitude Confidence.
 
template<typename T>
gm::PointStamped etsi_its_cam_msgs::access::getUTMPosition (const T &reference_position, int &zone, bool &northp)
 Get the UTM Position defined by the given ReferencePosition.
 
template<typename Heading>
double etsi_its_cam_msgs::access::getHeadingCDD (const Heading &heading)
 Get the Heading value.
 
template<typename Heading>
double etsi_its_cam_msgs::access::getHeadingConfidenceCDD (const Heading &heading)
 Get the Heading value.
 
template<typename YawRate>
double etsi_its_cam_msgs::access::getYawRateCDD (const YawRate &yaw_rate)
 Get the Yaw Rate value.
 
template<typename YawRate, typename YawRateConfidence = decltype(YawRate::yaw_rate_confidence)>
double etsi_its_cam_msgs::access::getYawRateConfidenceCDD (const YawRate &yaw_rate)
 Get the Yaw Rate Confidence.
 
template<typename SemiAxisLength>
double etsi_its_cam_msgs::access::getSemiAxis (const SemiAxisLength &semi_axis_length)
 Get the Semi Axis object.
 
template<typename PosConfidenceEllipse>
std::tuple< double, double, double > etsi_its_cam_msgs::access::getPosConfidenceEllipse (const PosConfidenceEllipse &position_confidence_ellipse)
 Extract major axis length, minor axis length and orientation from the given position confidence ellipse.
 
std::array< double, 4 > etsi_its_cam_msgs::access::CovMatrixFromConfidenceEllipse (double semi_major, double semi_minor, double major_orientation, const double object_heading)
 Convert the confidence ellipse to a covariance matrix.
 
std::array< double, 4 > etsi_its_cam_msgs::access::WGSCovMatrixFromConfidenceEllipse (double semi_major, double semi_minor, double major_orientation)
 Convert the confidence ellipse to a covariance matrix.
 
template<typename PosConfidenceEllipse>
std::array< double, 4 > etsi_its_cam_msgs::access::getPosConfidenceEllipse (const PosConfidenceEllipse &position_confidence_ellipse, const double object_heading)
 Get the covariance matrix of the position confidence ellipse.
 
template<typename PosConfidenceEllipse>
std::array< double, 4 > etsi_its_cam_msgs::access::getWGSPosConfidenceEllipse (const PosConfidenceEllipse &position_confidence_ellipse)
 Get the covariance matrix of the position confidence ellipse.
 
double etsi_its_cam_msgs::access::getLongitudinalAcceleration (const LongitudinalAcceleration &longitudinal_acceleration)
 Get the longitudinal acceleration.
 
double etsi_its_cam_msgs::access::getLongitudinalAccelerationConfidence (const LongitudinalAcceleration &longitudinal_acceleration)
 Get the Longitudinal Acceleration Confidence.
 
double etsi_its_cam_msgs::access::getLateralAcceleration (const LateralAcceleration &lateral_acceleration)
 Get the lateral acceleration.
 
double etsi_its_cam_msgs::access::getLateralAccelerationConfidence (const LateralAcceleration &lateral_acceleration)
 Get the Lateral Acceleration Confidence.
 
std::vector< bool > etsi_its_cam_msgs::access::getBitString (const std::vector< uint8_t > &buffer, const int bits_unused)
 Get a Bit String in form of bool vector.
 
uint32_t etsi_its_cam_msgs::access::getStationID (const CAM &cam)
 Get the Station ID object.
 
GenerationDeltaTime etsi_its_cam_msgs::access::getGenerationDeltaTime (const CAM &cam)
 Get the GenerationDeltaTime.
 
uint16_t etsi_its_cam_msgs::access::getGenerationDeltaTimeValue (const CAM &cam)
 Get the GenerationDeltaTime-Value.
 
uint8_t etsi_its_cam_msgs::access::getStationType (const CAM &cam)
 Get the stationType object.
 
double etsi_its_cam_msgs::access::getLatitude (const CAM &cam)
 Get the Latitude value of CAM.
 
double etsi_its_cam_msgs::access::getLongitude (const CAM &cam)
 Get the Longitude value of CAM.
 
double etsi_its_cam_msgs::access::getAltitude (const CAM &cam)
 Get the Altitude value of CAM.
 
double etsi_its_cam_msgs::access::getHeading (const CAM &cam)
 Get the Heading value of CAM.
 
double etsi_its_cam_msgs::access::getHeadingConfidence (const CAM &cam)
 Get the Heading confidence of CAM.
 
double etsi_its_cam_msgs::access::getYawRate (const CAM &cam)
 Get the Yaw Rate of CAM.
 
double etsi_its_cam_msgs::access::getYawRateConfidence (const CAM &cam)
 Get the Yaw Rate Confidence of CAM.
 
double etsi_its_cam_msgs::access::getVehicleLength (const VehicleLength &vehicle_length)
 Get the Vehicle Length.
 
double etsi_its_cam_msgs::access::getVehicleLength (const CAM &cam)
 Get the Vehicle Length.
 
double etsi_its_cam_msgs::access::getVehicleWidth (const VehicleWidth &vehicle_width)
 Get the Vehicle Width.
 
double etsi_its_cam_msgs::access::getVehicleWidth (const CAM &cam)
 Get the Vehicle Width.
 
double etsi_its_cam_msgs::access::getSpeed (const CAM &cam)
 Get the vehicle speed.
 
double etsi_its_cam_msgs::access::getSpeedConfidence (const CAM &cam)
 Get the Speed Confidence.
 
double etsi_its_cam_msgs::access::getLongitudinalAcceleration (const CAM &cam)
 Get the longitudinal acceleration.
 
double etsi_its_cam_msgs::access::getLongitudinalAccelerationConfidence (const CAM &cam)
 Get the Longitudinal Acceleration Confidence.
 
double etsi_its_cam_msgs::access::getLateralAcceleration (const CAM &cam)
 Get the lateral acceleration.
 
double etsi_its_cam_msgs::access::getLateralAccelerationConfidence (const CAM &cam)
 Get the Lateral Acceleration Confidence.
 
gm::PointStamped etsi_its_cam_msgs::access::getUTMPosition (const CAM &cam, int &zone, bool &northp)
 Get the UTM Position defined within the BasicContainer of the CAM.
 
gm::PointStamped etsi_its_cam_msgs::access::getUTMPosition (const CAM &cam)
 Get the UTM Position defined within the BasicContainer of the CAM.
 
std::vector< bool > etsi_its_cam_msgs::access::getExteriorLights (const ExteriorLights &exterior_lights)
 Get the Exterior Lights in form of bool vector.
 
std::vector< bool > etsi_its_cam_msgs::access::getExteriorLights (const CAM &cam)
 Get Exterior Lights as bool vector.
 
std::vector< bool > etsi_its_cam_msgs::access::getAccelerationControl (const AccelerationControl &acceleration_control)
 Get Acceleration Control in form of bool vector.
 
std::vector< bool > etsi_its_cam_msgs::access::getDrivingLaneStatus (const DrivingLaneStatus &driving_lane_status)
 Get the Driving Lane Status in form of bool vector.
 
std::vector< bool > etsi_its_cam_msgs::access::getSpecialTransportType (const SpecialTransportType &special_transport_type)
 Get the Special Transport Type in form of bool vector.
 
std::vector< bool > etsi_its_cam_msgs::access::getLightBarSirenInUse (const LightBarSirenInUse &light_bar_siren_in_use)
 Get the Lightbar Siren In Use in form of bool vector.
 
std::vector< bool > etsi_its_cam_msgs::access::getEmergencyPriority (const EmergencyPriority &emergency_priority)
 Get the Vehicle Role in form of bool vector.
 
const std::array< double, 4 > etsi_its_cam_msgs::access::getRefPosConfidence (const CAM &cam)
 Get the confidence ellipse of the reference position as Covariance matrix.
 
const std::array< double, 4 > etsi_its_cam_msgs::access::getWGSRefPosConfidence (const CAM &cam)
 Get the confidence ellipse of the reference position as Covariance matrix.
 

Detailed Description

Getter functions for the ETSI ITS CAM (EN)

Definition in file cam_getters.h.

Function Documentation

◆ CovMatrixFromConfidenceEllipse()

std::array< double, 4 > etsi_its_cam_msgs::access::CovMatrixFromConfidenceEllipse ( double semi_major,
double semi_minor,
double major_orientation,
const double object_heading )
inline

Convert the confidence ellipse to a covariance matrix.

Note that the major_orientation is given in degrees, while the object_heading is given in radians!

Parameters
semi_majorSemi major axis length in meters
semi_minorSemi minor axis length in meters
major_orientationOrientation of the major axis in degrees, relative to WGS84
object_headingobject heading in radians, relative to WGS84
Returns
std::array<double, 4> The covariance matrix in vehicle coordinates (x = longitudinal, y = lateral)

Definition at line 244 of file cam_getters.h.

◆ getAccelerationControl()

std::vector< bool > etsi_its_cam_msgs::access::getAccelerationControl ( const AccelerationControl & acceleration_control)
inline

Get Acceleration Control in form of bool vector.

Parameters
acceleration_control
Returns
std::vector<bool>

Definition at line 356 of file cam_getters.h.

389 {
391
398inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
399 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
400}
401
408inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
409 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
410}
411
418inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
419 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
420}
421
428inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
429 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
430}
431
433
443inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
444 double object_heading = getHeading(cam) * M_PI / 180.0;
445 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
446}
447
457inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
458 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
459}
460
461}
const std::array< double, 4 > getRefPosConfidence(const CAM &cam)
Get the confidence ellipse of the reference position as Covariance matrix.
std::array< double, 4 > getWGSPosConfidenceEllipse(const PosConfidenceEllipse &position_confidence_ellipse)
Get the covariance matrix of the position confidence ellipse.
const std::array< double, 4 > getWGSRefPosConfidence(const CAM &cam)
Get the confidence ellipse of the reference position as Covariance matrix.
double getLateralAccelerationConfidence(const LateralAcceleration &lateral_acceleration)
Get the Lateral Acceleration Confidence.
std::tuple< double, double, double > getPosConfidenceEllipse(const PosConfidenceEllipse &position_confidence_ellipse)
Extract major axis length, minor axis length and orientation from the given position confidence ellip...
double getLongitudinalAcceleration(const LongitudinalAcceleration &longitudinal_acceleration)
Get the longitudinal acceleration.
double getHeading(const CAM &cam)
Get the Heading value of CAM.
Common getter functions for the ETSI ITS CAM (EN and TS)
double getLongitudinalAccelerationConfidence(const CAM &cam)
Get the Longitudinal Acceleration Confidence.
double getLateralAcceleration(const CAM &cam)
Get the lateral acceleration.
Getter functions for the ETSI ITS Common Data Dictionary (CDD) v1.3.1.

◆ getAccelerationMagnitude()

template<typename AccelerationMagnitude>
double etsi_its_cam_msgs::access::getAccelerationMagnitude ( const AccelerationMagnitude & acceleration_magnitude)
inline

Get the AccelerationMagnitude value.

Parameters
acceleration_magnitudeto get the AccelerationMagnitude from
Returns
double acceleration magnitude in m/s^2 as decimal number

Definition at line 103 of file cam_getters.h.

◆ getAccelerationMagnitudeConfidence()

template<typename AccelerationMagnitude>
double etsi_its_cam_msgs::access::getAccelerationMagnitudeConfidence ( const AccelerationMagnitude & acceleration_magnitude)
inline

Get the AccelerationMagnitude Confidence.

Parameters
acceleration_magnitudeto get the AccelerationMagnitudeConfidence from
Returns
double acceleration magnitude standard deviation in m/s^2 as decimal number

Definition at line 114 of file cam_getters.h.

147 {
149
156inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
157 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
158}
159
166inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
167 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
168}
169
176inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
177 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
178}
179
186inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
187 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
188}
189
191
201inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
202 double object_heading = getHeading(cam) * M_PI / 180.0;
203 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
204}
205
215inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
216 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
217}
218
219}

◆ getAltitude() [1/2]

double etsi_its_cam_msgs::access::getAltitude ( const Altitude & altitude)
inline

Get the Altitude value.

Parameters
altitudeto get the Altitude value from
Returns
Altitude value (above the reference ellipsoid surface) in meter as decimal number (0 if unavailable)

Definition at line 71 of file cam_getters.h.

73 {
74 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
75}
76

◆ getAltitude() [2/2]

double etsi_its_cam_msgs::access::getAltitude ( const CAM & cam)
inline

Get the Altitude value of CAM.

Parameters
camCAM to get the Altitude value from
Returns
Altitude value (above the reference ellipsoid surface) in meter as decimal number

Definition at line 128 of file cam_getters.h.

161 {
163
170inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
171 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
172}
173
180inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
181 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
182}
183
190inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
191 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
192}
193
200inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
201 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
202}
203
205
215inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
216 double object_heading = getHeading(cam) * M_PI / 180.0;
217 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
218}
219
229inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
230 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
231}
232
233}

◆ getBitString()

std::vector< bool > etsi_its_cam_msgs::access::getBitString ( const std::vector< uint8_t > & buffer,
const int bits_unused )
inline

Get a Bit String in form of bool vector.

Parameters
bufferas uint8_t vector
bits_unusednumber of bits to ignore at the end of the bit string
Returns
std::vector<bool>

Definition at line 43 of file cam_getters.h.

43 {
44 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
45}
46
53inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
54 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
55}
56
63inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
64 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
65}
66

◆ getDrivingLaneStatus()

std::vector< bool > etsi_its_cam_msgs::access::getDrivingLaneStatus ( const DrivingLaneStatus & driving_lane_status)
inline

Get the Driving Lane Status in form of bool vector.

Parameters
driving_lane_status
Returns
std::vector<bool>

Definition at line 366 of file cam_getters.h.

399 {
401
408inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
409 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
410}
411
418inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
419 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
420}
421
428inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
429 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
430}
431
438inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
439 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
440}
441
443
453inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
454 double object_heading = getHeading(cam) * M_PI / 180.0;
455 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
456}
457
467inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
468 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
469}
470
471}

◆ getEmergencyPriority()

std::vector< bool > etsi_its_cam_msgs::access::getEmergencyPriority ( const EmergencyPriority & emergency_priority)
inline

Get the Vehicle Role in form of bool vector.

Parameters
vehicle_role
Returns
std::vector<bool>

Definition at line 396 of file cam_getters.h.

429 {
431
438inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
439 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
440}
441
448inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
449 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
450}
451
458inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
459 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
460}
461
468inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
469 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
470}
471
473
483inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
484 double object_heading = getHeading(cam) * M_PI / 180.0;
485 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
486}
487
497inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
498 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
499}
500
501}

◆ getExteriorLights() [1/2]

std::vector< bool > etsi_its_cam_msgs::access::getExteriorLights ( const CAM & cam)
inline

Get Exterior Lights as bool vector.

Parameters
camCAM to get the ExteriorLights values from
Returns
std::vector<bool>

Definition at line 336 of file cam_getters.h.

369 {
371
378inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
379 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
380}
381
388inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
389 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
390}
391
398inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
399 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
400}
401
408inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
409 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
410}
411
413
423inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
424 double object_heading = getHeading(cam) * M_PI / 180.0;
425 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
426}
427
437inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
438 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
439}
440
441}

◆ getExteriorLights() [2/2]

std::vector< bool > etsi_its_cam_msgs::access::getExteriorLights ( const ExteriorLights & exterior_lights)
inline

Get the Exterior Lights in form of bool vector.

Parameters
exterior_lights
Returns
std::vector<bool>

Definition at line 326 of file cam_getters.h.

359 {
361
368inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
369 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
370}
371
378inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
379 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
380}
381
388inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
389 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
390}
391
398inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
399 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
400}
401
403
413inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
414 double object_heading = getHeading(cam) * M_PI / 180.0;
415 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
416}
417
427inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
428 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
429}
430
431}

◆ getGenerationDeltaTime()

GenerationDeltaTime etsi_its_cam_msgs::access::getGenerationDeltaTime ( const CAM & cam)
inline

Get the GenerationDeltaTime.

Parameters
camCAM to get the GenerationDeltaTime from
Returns
GenerationDeltaTime the GenerationDeltaTime

Definition at line 84 of file cam_getters.h.

◆ getGenerationDeltaTimeValue()

uint16_t etsi_its_cam_msgs::access::getGenerationDeltaTimeValue ( const CAM & cam)
inline

Get the GenerationDeltaTime-Value.

Parameters
camCAM to get the GenerationDeltaTime-Value from
Returns
uint16_t the GenerationDeltaTime-Value

Definition at line 92 of file cam_getters.h.

◆ getHeading()

double etsi_its_cam_msgs::access::getHeading ( const CAM & cam)
inline

Get the Heading value of CAM.

0.0° equals WGS84 North, 90.0° equals WGS84 East, 180.0° equals WGS84 South and 270.0° equals WGS84 West

Parameters
camCAM to get the Heading value from
Returns
Heading value in degree as decimal number

Definition at line 140 of file cam_getters.h.

173 {
175
182inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
183 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
184}
185
192inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
193 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
194}
195
202inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
203 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
204}
205
212inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
213 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
214}
215
217
227inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
228 double object_heading = getHeading(cam) * M_PI / 180.0;
229 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
230}
231
241inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
242 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
243}
244
245}

◆ getHeadingCDD()

template<typename Heading>
double etsi_its_cam_msgs::access::getHeadingCDD ( const Heading & heading)
inline

Get the Heading value.

0.0° equals WGS84 North, 90.0° equals WGS84 East, 180.0° equals WGS84 South and 270.0° equals WGS84 West

Parameters
headingto get the Heading value from
Returns
Heading value in degree as decimal number

Definition at line 159 of file cam_getters.h.

192{
194
201inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
202 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
203}
204
211inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
212 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
213}
214
221inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
222 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
223}
224
231inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
232 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
233}
234
236
246inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
247 double object_heading = getHeading(cam) * M_PI / 180.0;
248 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
249}
250
260inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
261 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
262}
263
264}

◆ getHeadingConfidence()

double etsi_its_cam_msgs::access::getHeadingConfidence ( const CAM & cam)
inline

Get the Heading confidence of CAM.

Parameters
camCAM to get the Heading confidence from
Returns
Heading standard deviation in degree as decimal number

Definition at line 151 of file cam_getters.h.

184 {
186
193inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
194 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
195}
196
203inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
204 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
205}
206
213inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
214 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
215}
216
223inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
224 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
225}
226
228
238inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
239 double object_heading = getHeading(cam) * M_PI / 180.0;
240 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
241}
242
252inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
253 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
254}
255
256}

◆ getHeadingConfidenceCDD()

template<typename Heading>
double etsi_its_cam_msgs::access::getHeadingConfidenceCDD ( const Heading & heading)
inline

Get the Heading value.

0.0° equals WGS84 North, 90.0° equals WGS84 East, 180.0° equals WGS84 South and 270.0° equals WGS84 West

Parameters
headingto get the Heading standard deviation from
Returns
Heading standard deviation in degree as decimal number

Definition at line 170 of file cam_getters.h.

203{
205
212inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
213 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
214}
215
222inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
223 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
224}
225
232inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
233 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
234}
235
242inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
243 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
244}
245
247
257inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
258 double object_heading = getHeading(cam) * M_PI / 180.0;
259 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
260}
261
271inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
272 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
273}
274
275}

◆ getLateralAcceleration() [1/2]

double etsi_its_cam_msgs::access::getLateralAcceleration ( const CAM & cam)
inline

Get the lateral acceleration.

Parameters
camCAM to get the lateral acceleration from
Returns
lateral acceleration in m/s^2 as decimal number (left is positive)

Definition at line 264 of file cam_getters.h.

297 {
299
306inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
307 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
308}
309
316inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
317 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
318}
319
326inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
327 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
328}
329
336inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
337 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
338}
339
341
351inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
352 double object_heading = getHeading(cam) * M_PI / 180.0;
353 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
354}
355
365inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
366 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
367}
368
369}

◆ getLateralAcceleration() [2/2]

double etsi_its_cam_msgs::access::getLateralAcceleration ( const LateralAcceleration & lateral_acceleration)
inline

Get the lateral acceleration.

Parameters
lateralAccelerationto get the lateral acceleration from
Returns
lateral acceleration in m/s^2 as decimal number (left is positive)

Definition at line 334 of file cam_getters.h.

367 {
369
376inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
377 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
378}
379
386inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
387 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
388}
389
396inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
397 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
398}
399
406inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
407 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
408}
409
411
421inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
422 double object_heading = getHeading(cam) * M_PI / 180.0;
423 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
424}
425
435inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
436 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
437}
438
439}

◆ getLateralAccelerationConfidence() [1/2]

double etsi_its_cam_msgs::access::getLateralAccelerationConfidence ( const CAM & cam)
inline

Get the Lateral Acceleration Confidence.

Parameters
camCAM to get the LateralAccelerationConfidence from
Returns
double standard deviation of the lateral acceleration in m/s^2 as decimal number

Definition at line 280 of file cam_getters.h.

313 {
315
322inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
323 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
324}
325
332inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
333 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
334}
335
342inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
343 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
344}
345
352inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
353 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
354}
355
357
367inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
368 double object_heading = getHeading(cam) * M_PI / 180.0;
369 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
370}
371
381inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
382 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
383}
384
385}

◆ getLateralAccelerationConfidence() [2/2]

double etsi_its_cam_msgs::access::getLateralAccelerationConfidence ( const LateralAcceleration & lateral_acceleration)
inline

Get the Lateral Acceleration Confidence.

Parameters
longitudinal_accelerationto get the LateralAccelerationConfidence from
Returns
double standard deviation of the lateral acceleration in m/s^2 as decimal number

Definition at line 344 of file cam_getters.h.

377 {
379
386inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
387 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
388}
389
396inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
397 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
398}
399
406inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
407 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
408}
409
416inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
417 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
418}
419
421
431inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
432 double object_heading = getHeading(cam) * M_PI / 180.0;
433 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
434}
435
445inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
446 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
447}
448
449}

◆ getLatitude() [1/2]

double etsi_its_cam_msgs::access::getLatitude ( const CAM & cam)
inline

Get the Latitude value of CAM.

Parameters
camCAM to get the Latitude value from
Returns
Latitude value in degree as decimal number

Definition at line 108 of file cam_getters.h.

141 {
143
150inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
151 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
152}
153
160inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
161 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
162}
163
170inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
171 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
172}
173
180inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
181 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
182}
183
185
195inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
196 double object_heading = getHeading(cam) * M_PI / 180.0;
197 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
198}
199
209inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
210 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
211}
212
213}

◆ getLatitude() [2/2]

double etsi_its_cam_msgs::access::getLatitude ( const Latitude & latitude)
inline

Get the Latitude value.

Parameters
latitudeto get the Latitude value from
Returns
Latitude value in degree as decimal number

Definition at line 55 of file cam_getters.h.

◆ getLightBarSirenInUse()

std::vector< bool > etsi_its_cam_msgs::access::getLightBarSirenInUse ( const LightBarSirenInUse & light_bar_siren_in_use)
inline

Get the Lightbar Siren In Use in form of bool vector.

Parameters
light_bar_siren_in_use
Returns
std::vector<bool>

Definition at line 386 of file cam_getters.h.

419 {
421
428inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
429 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
430}
431
438inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
439 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
440}
441
448inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
449 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
450}
451
458inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
459 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
460}
461
463
473inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
474 double object_heading = getHeading(cam) * M_PI / 180.0;
475 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
476}
477
487inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
488 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
489}
490
491}

◆ getLongitude() [1/2]

double etsi_its_cam_msgs::access::getLongitude ( const CAM & cam)
inline

Get the Longitude value of CAM.

Parameters
camCAM to get the Longitude value from
Returns
Longitude value in degree as decimal number

Definition at line 118 of file cam_getters.h.

151 {
153
160inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
161 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
162}
163
170inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
171 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
172}
173
180inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
181 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
182}
183
190inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
191 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
192}
193
195
205inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
206 double object_heading = getHeading(cam) * M_PI / 180.0;
207 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
208}
209
219inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
220 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
221}
222
223}

◆ getLongitude() [2/2]

double etsi_its_cam_msgs::access::getLongitude ( const Longitude & longitude)
inline

Get the Longitude value.

Parameters
longitudeto get the Longitude value from
Returns
Longitude value in degree as decimal number

Definition at line 63 of file cam_getters.h.

63{

◆ getLongitudinalAcceleration() [1/2]

double etsi_its_cam_msgs::access::getLongitudinalAcceleration ( const CAM & cam)
inline

Get the longitudinal acceleration.

Parameters
camCAM to get the longitudinal acceleration from
Returns
longitudinal acceleration in m/s^2 as decimal number (accelerating is positive)

Definition at line 242 of file cam_getters.h.

275 {
277
284inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
285 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
286}
287
294inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
295 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
296}
297
304inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
305 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
306}
307
314inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
315 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
316}
317
319
329inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
330 double object_heading = getHeading(cam) * M_PI / 180.0;
331 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
332}
333
343inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
344 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
345}
346
347}

◆ getLongitudinalAcceleration() [2/2]

double etsi_its_cam_msgs::access::getLongitudinalAcceleration ( const LongitudinalAcceleration & longitudinal_acceleration)
inline

Get the longitudinal acceleration.

Parameters
longitudinalAccelerationto get the longitudinal acceleration from
Returns
longitudinal acceleration in m/s^2 as decimal number (accelerating is positive)

Definition at line 314 of file cam_getters.h.

347 {
349
356inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
357 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
358}
359
366inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
367 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
368}
369
376inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
377 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
378}
379
386inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
387 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
388}
389
391
401inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
402 double object_heading = getHeading(cam) * M_PI / 180.0;
403 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
404}
405
415inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
416 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
417}
418
419}

◆ getLongitudinalAccelerationConfidence() [1/2]

double etsi_its_cam_msgs::access::getLongitudinalAccelerationConfidence ( const CAM & cam)
inline

Get the Longitudinal Acceleration Confidence.

Parameters
camCAM to get the LongitudinalAccelerationConfidence from
Returns
double standard deviation of the longitudinal acceleration in m/s^2 as decimal number

Definition at line 253 of file cam_getters.h.

286 {
288
295inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
296 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
297}
298
305inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
306 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
307}
308
315inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
316 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
317}
318
325inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
326 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
327}
328
330
340inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
341 double object_heading = getHeading(cam) * M_PI / 180.0;
342 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
343}
344
354inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
355 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
356}
357
358}

◆ getLongitudinalAccelerationConfidence() [2/2]

double etsi_its_cam_msgs::access::getLongitudinalAccelerationConfidence ( const LongitudinalAcceleration & longitudinal_acceleration)
inline

Get the Longitudinal Acceleration Confidence.

Parameters
longitudinal_accelerationto get the LongitudinalAccelerationConfidence from
Returns
double standard deviation of the longitudinal acceleration in m/s^2 as decimal number

Definition at line 324 of file cam_getters.h.

357 {
359
366inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
367 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
368}
369
376inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
377 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
378}
379
386inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
387 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
388}
389
396inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
397 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
398}
399
401
411inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
412 double object_heading = getHeading(cam) * M_PI / 180.0;
413 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
414}
415
425inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
426 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
427}
428
429}

◆ getPosConfidenceEllipse() [1/2]

template<typename PosConfidenceEllipse>
std::tuple< double, double, double > etsi_its_cam_msgs::access::getPosConfidenceEllipse ( const PosConfidenceEllipse & position_confidence_ellipse)
inline

Extract major axis length, minor axis length and orientation from the given position confidence ellipse.

Parameters
position_confidence_ellipseThe position confidence ellipse to extract the values from
Returns
std::tuple<double, double, double> major axis length in meters, minor axis length in meters, and orientation in degrees

Definition at line 225 of file cam_getters.h.

258 {
260
267inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
268 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
269}
270
277inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
278 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
279}
280
287inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
288 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
289}
290
297inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
298 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
299}
300
302
312inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
313 double object_heading = getHeading(cam) * M_PI / 180.0;
314 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
315}
316
326inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
327 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
328}
329
330}

◆ getPosConfidenceEllipse() [2/2]

template<typename PosConfidenceEllipse>
std::array< double, 4 > etsi_its_cam_msgs::access::getPosConfidenceEllipse ( const PosConfidenceEllipse & position_confidence_ellipse,
const double object_heading )
inline

Get the covariance matrix of the position confidence ellipse.

Parameters
position_confidence_ellipseThe position confidence ellipse to get the covariance matrix from
object_headingThe object heading in radians
Returns
std::array<double, 4> The covariance matrix of the position confidence ellipse in vehicle coordinates (x = longitudinal, y = lateral)

Definition at line 286 of file cam_getters.h.

319 {
321
328inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
329 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
330}
331
338inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
339 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
340}
341
348inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
349 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
350}
351
358inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
359 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
360}
361
363
373inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
374 double object_heading = getHeading(cam) * M_PI / 180.0;
375 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
376}
377
387inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
388 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
389}
390
391}

◆ getRefPosConfidence()

const std::array< double, 4 > etsi_its_cam_msgs::access::getRefPosConfidence ( const CAM & cam)
inline

Get the confidence ellipse of the reference position as Covariance matrix.

The covariance matrix will have the entries cov_xx, cov_xy, cov_yx, cov_yy where x is the longitudinal axis and y is the lateral axis of the vehicle.

Parameters
camThe CAM message to get the reference position from
Returns
const std::array<double, 4> the covariance matrix, as specified above

Definition at line 411 of file cam_getters.h.

444 {
446
453inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
454 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
455}
456
463inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
464 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
465}
466
473inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
474 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
475}
476
483inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
484 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
485}
486
488
498inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
499 double object_heading = getHeading(cam) * M_PI / 180.0;
500 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
501}
502
512inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
513 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
514}
515
516}

◆ getSemiAxis()

template<typename SemiAxisLength>
double etsi_its_cam_msgs::access::getSemiAxis ( const SemiAxisLength & semi_axis_length)
inline

Get the Semi Axis object.

Parameters
semi_axis_lengthThe SemiAxisLength object to get the semi axis from
Returns
double the semi axis length in meters

Definition at line 214 of file cam_getters.h.

247 {
249
256inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
257 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
258}
259
266inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
267 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
268}
269
276inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
277 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
278}
279
286inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
287 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
288}
289
291
301inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
302 double object_heading = getHeading(cam) * M_PI / 180.0;
303 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
304}
305
315inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
316 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
317}
318
319}

◆ getSpecialTransportType()

std::vector< bool > etsi_its_cam_msgs::access::getSpecialTransportType ( const SpecialTransportType & special_transport_type)
inline

Get the Special Transport Type in form of bool vector.

Parameters
special_transport_type
Returns
std::vector<bool>

Definition at line 376 of file cam_getters.h.

409 {
411
418inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
419 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
420}
421
428inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
429 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
430}
431
438inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
439 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
440}
441
448inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
449 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
450}
451
453
463inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
464 double object_heading = getHeading(cam) * M_PI / 180.0;
465 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
466}
467
477inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
478 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
479}
480
481}

◆ getSpeed() [1/2]

double etsi_its_cam_msgs::access::getSpeed ( const CAM & cam)
inline

Get the vehicle speed.

Parameters
camCAM to get the speed value from
Returns
speed value in m/s as decimal number

Definition at line 221 of file cam_getters.h.

254 {
256
263inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
264 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
265}
266
273inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
274 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
275}
276
283inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
284 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
285}
286
293inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
294 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
295}
296
298
308inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
309 double object_heading = getHeading(cam) * M_PI / 180.0;
310 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
311}
312
322inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
323 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
324}
325
326}

◆ getSpeed() [2/2]

double etsi_its_cam_msgs::access::getSpeed ( const Speed & speed)
inline

Get the vehicle speed.

Parameters
speedto get the speed value from
Returns
speed value in m/s as decimal number

Definition at line 84 of file cam_getters.h.

◆ getSpeedConfidence() [1/2]

double etsi_its_cam_msgs::access::getSpeedConfidence ( const CAM & cam)
inline

Get the Speed Confidence.

Parameters
camCAM to get the Speed Confidence from
Returns
double standard deviation of the speed in m/s as decimal number

Definition at line 231 of file cam_getters.h.

264 {
266
273inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
274 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
275}
276
283inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
284 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
285}
286
293inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
294 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
295}
296
303inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
304 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
305}
306
308
318inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
319 double object_heading = getHeading(cam) * M_PI / 180.0;
320 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
321}
322
332inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
333 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
334}
335
336}

◆ getSpeedConfidence() [2/2]

double etsi_its_cam_msgs::access::getSpeedConfidence ( const Speed & speed)
inline

Get the Speed Confidence.

Parameters
speedto get the SpeedConfidence from
Returns
double speed standard deviation in m/s as decimal number

Definition at line 92 of file cam_getters.h.

◆ getStationID() [1/2]

uint32_t etsi_its_cam_msgs::access::getStationID ( const CAM & cam)
inline

Get the Station ID object.

Parameters
camCAM to get the StationID value from
Returns
stationID value

Definition at line 76 of file cam_getters.h.

◆ getStationID() [2/2]

uint32_t etsi_its_cam_msgs::access::getStationID ( const ItsPduHeader & header)
inline

Get the StationID of ItsPduHeader.

Parameters
headerItsPduHeader to get the StationID value from
Returns
stationID value

Definition at line 47 of file cam_getters.h.

◆ getStationType()

uint8_t etsi_its_cam_msgs::access::getStationType ( const CAM & cam)
inline

Get the stationType object.

Parameters
camCAM to get the stationType value from
Returns
stationType value

Definition at line 100 of file cam_getters.h.

◆ getUTMPosition() [1/3]

gm::PointStamped etsi_its_cam_msgs::access::getUTMPosition ( const CAM & cam)
inline

Get the UTM Position defined within the BasicContainer of the CAM.

The position is transformed into UTM by using GeographicLib::UTMUPS The altitude value is directly used as z-Coordinate

Parameters
[in]camCAM to get the UTM Position from
Returns
gm::PointStamped geometry_msgs::PointStamped of the given position

Definition at line 314 of file cam_getters.h.

347 {
349
356inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
357 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
358}
359
366inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
367 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
368}
369
376inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
377 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
378}
379
386inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
387 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
388}
389
391
401inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
402 double object_heading = getHeading(cam) * M_PI / 180.0;
403 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
404}
405
415inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
416 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
417}
418
419}

◆ getUTMPosition() [2/3]

gm::PointStamped etsi_its_cam_msgs::access::getUTMPosition ( const CAM & cam,
int & zone,
bool & northp )
inline

Get the UTM Position defined within the BasicContainer of the CAM.

The position is transformed into UTM by using GeographicLib::UTMUPS The altitude value is directly used as z-Coordinate

Parameters
[in]camCAM to get the UTM Position from
[out]zonethe UTM zone (zero means UPS)
[out]northphemisphere (true means north, false means south)
Returns
gm::PointStamped geometry_msgs::PointStamped of the given position

Definition at line 301 of file cam_getters.h.

334 {
336
343inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
344 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
345}
346
353inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
354 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
355}
356
363inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
364 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
365}
366
373inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
374 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
375}
376
378
388inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
389 double object_heading = getHeading(cam) * M_PI / 180.0;
390 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
391}
392
402inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
403 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
404}
405
406}

◆ getUTMPosition() [3/3]

template<typename T>
gm::PointStamped etsi_its_cam_msgs::access::getUTMPosition ( const T & reference_position,
int & zone,
bool & northp )
inline

Get the UTM Position defined by the given ReferencePosition.

The position is transformed into UTM by using GeographicLib::UTMUPS The altitude value is directly used as z-Coordinate

Parameters
[in]reference_positionReferencePosition or ReferencePositionWithConfidence to get the UTM Position from
[out]zonethe UTM zone (zero means UPS)
[out]northphemisphere (true means north, false means south)
Returns
gm::PointStamped geometry_msgs::PointStamped of the given position

Definition at line 130 of file cam_getters.h.

163 {
165
172inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
173 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
174}
175
182inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
183 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
184}
185
192inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
193 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
194}
195
202inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
203 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
204}
205
207
217inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
218 double object_heading = getHeading(cam) * M_PI / 180.0;
219 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
220}
221
231inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
232 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
233}
234
235}

◆ getVehicleLength() [1/2]

double etsi_its_cam_msgs::access::getVehicleLength ( const CAM & cam)
inline

Get the Vehicle Length.

Parameters
camCAM to get the vehicle length value from
Returns
vehicle length value in meter as decimal number

Definition at line 191 of file cam_getters.h.

224 {
226
233inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
234 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
235}
236
243inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
244 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
245}
246
253inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
254 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
255}
256
263inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
264 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
265}
266
268
278inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
279 double object_heading = getHeading(cam) * M_PI / 180.0;
280 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
281}
282
292inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
293 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
294}
295
296}

◆ getVehicleLength() [2/2]

double etsi_its_cam_msgs::access::getVehicleLength ( const VehicleLength & vehicle_length)
inline

Get the Vehicle Length.

Parameters
vehicleLengthto get the vehicle length value from
Returns
vehicle length value in meter as decimal number

Definition at line 181 of file cam_getters.h.

214 {
216
223inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
224 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
225}
226
233inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
234 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
235}
236
243inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
244 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
245}
246
253inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
254 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
255}
256
258
268inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
269 double object_heading = getHeading(cam) * M_PI / 180.0;
270 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
271}
272
282inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
283 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
284}
285
286}

◆ getVehicleWidth() [1/2]

double etsi_its_cam_msgs::access::getVehicleWidth ( const CAM & cam)
inline

Get the Vehicle Width.

Parameters
camCAM to get the vehicle width value from
Returns
vehicle width value in meter as decimal number

Definition at line 210 of file cam_getters.h.

243 {
245
252inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
253 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
254}
255
262inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
263 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
264}
265
272inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
273 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
274}
275
282inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
283 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
284}
285
287
297inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
298 double object_heading = getHeading(cam) * M_PI / 180.0;
299 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
300}
301
311inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
312 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
313}
314
315}

◆ getVehicleWidth() [2/2]

double etsi_its_cam_msgs::access::getVehicleWidth ( const VehicleWidth & vehicle_width)
inline

Get the Vehicle Width.

Parameters
vehicleWidthto get the vehicle width value from
Returns
vehicle width value in meter as decimal number

Definition at line 202 of file cam_getters.h.

235{
237
244inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
245 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
246}
247
254inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
255 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
256}
257
264inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
265 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
266}
267
274inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
275 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
276}
277
279
289inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
290 double object_heading = getHeading(cam) * M_PI / 180.0;
291 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
292}
293
303inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
304 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
305}
306
307}

◆ getWGSPosConfidenceEllipse()

template<typename PosConfidenceEllipse>
std::array< double, 4 > etsi_its_cam_msgs::access::getWGSPosConfidenceEllipse ( const PosConfidenceEllipse & position_confidence_ellipse)
inline

Get the covariance matrix of the position confidence ellipse.

Parameters
position_confidence_ellipseThe position confidence ellipse to get the covariance matrix from
object_headingThe object heading in radians
Returns
std::array<double, 4> The covariance matrix of the position confidence ellipse in WGS coordinates (x = North, y = East)

Definition at line 299 of file cam_getters.h.

332 {
334
341inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
342 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
343}
344
351inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
352 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
353}
354
361inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
362 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
363}
364
371inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
372 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
373}
374
376
386inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
387 double object_heading = getHeading(cam) * M_PI / 180.0;
388 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
389}
390
400inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
401 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
402}
403
404}

◆ getWGSRefPosConfidence()

const std::array< double, 4 > etsi_its_cam_msgs::access::getWGSRefPosConfidence ( const CAM & cam)
inline

Get the confidence ellipse of the reference position as Covariance matrix.

The covariance matrix will have the entries cov_xx, cov_xy, cov_yx, cov_yy where x is WGS84 North and y is East

Parameters
camThe CAM message to get the reference position from
Returns
const std::array<double, 4> the covariance matrix, as specified above

Definition at line 425 of file cam_getters.h.

458 {
460
467inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
468 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
469}
470
477inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
478 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
479}
480
487inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
488 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
489}
490
497inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
498 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
499}
500
502
512inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
513 double object_heading = getHeading(cam) * M_PI / 180.0;
514 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
515}
516
526inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
527 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
528}
529
530}

◆ getYawRate()

double etsi_its_cam_msgs::access::getYawRate ( const CAM & cam)
inline

Get the Yaw Rate of CAM.

Parameters
camCAM to get the YawRate from
Returns
double yaw rate in degrees per second as decimal number

Definition at line 161 of file cam_getters.h.

194 {
196
203inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
204 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
205}
206
213inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
214 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
215}
216
223inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
224 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
225}
226
233inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
234 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
235}
236
238
248inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
249 double object_heading = getHeading(cam) * M_PI / 180.0;
250 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
251}
252
262inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
263 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
264}
265
266}

◆ getYawRateCDD()

template<typename YawRate>
double etsi_its_cam_msgs::access::getYawRateCDD ( const YawRate & yaw_rate)
inline

Get the Yaw Rate value.

Parameters
yaw_rateThe YawRate object to get the yaw rate from
Returns
double The yaw rate in degrees per second

Definition at line 179 of file cam_getters.h.

212 {
214
221inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
222 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
223}
224
231inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
232 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
233}
234
241inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
242 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
243}
244
251inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
252 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
253}
254
256
266inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
267 double object_heading = getHeading(cam) * M_PI / 180.0;
268 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
269}
270
280inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
281 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
282}
283
284}

◆ getYawRateConfidence()

double etsi_its_cam_msgs::access::getYawRateConfidence ( const CAM & cam)
inline

Get the Yaw Rate Confidence of CAM.

Parameters
camCAM to get the YawRateConfidence from
Returns
double yaw rate standard deviation in degrees per second as decimal number

Definition at line 171 of file cam_getters.h.

204 {
206
213inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
214 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
215}
216
223inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
224 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
225}
226
233inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
234 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
235}
236
243inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
244 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
245}
246
248
258inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
259 double object_heading = getHeading(cam) * M_PI / 180.0;
260 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
261}
262
272inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
273 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
274}
275
276}

◆ getYawRateConfidenceCDD()

template<typename YawRate, typename YawRateConfidence = decltype(YawRate::yaw_rate_confidence)>
double etsi_its_cam_msgs::access::getYawRateConfidenceCDD ( const YawRate & yaw_rate)
inline

Get the Yaw Rate Confidence.

Parameters
yaw_rateThe YawRate object to get the yaw rate confidence from
Returns
double The yaw rate standard deviation in degrees per second

Definition at line 190 of file cam_getters.h.

223 {
225
232inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
233 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
234}
235
242inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
243 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
244}
245
252inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
253 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
254}
255
262inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
263 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
264}
265
267
277inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
278 double object_heading = getHeading(cam) * M_PI / 180.0;
279 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
280}
281
291inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
292 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
293}
294
295}

◆ WGSCovMatrixFromConfidenceEllipse()

std::array< double, 4 > etsi_its_cam_msgs::access::WGSCovMatrixFromConfidenceEllipse ( double semi_major,
double semi_minor,
double major_orientation )
inline

Convert the confidence ellipse to a covariance matrix.

Note that the major_orientation is given in degrees, while the object_heading is given in radians!

Parameters
semi_majorSemi major axis length in meters
semi_minorSemi minor axis length in meters
major_orientationOrientation of the major axis in degrees, relative to WGS84
Returns
std::array<double, 4> The covariance matrix in WGS coordinates (x = North, y = East)

Definition at line 273 of file cam_getters.h.

306 {
308
315inline double getLongitudinalAcceleration(const LongitudinalAcceleration& longitudinal_acceleration) {
316 return ((double)longitudinal_acceleration.longitudinal_acceleration_value.value) * 1e-1;
317}
318
325inline double getLongitudinalAccelerationConfidence(const LongitudinalAcceleration& longitudinal_acceleration) {
326 return ((double)longitudinal_acceleration.longitudinal_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
327}
328
335inline double getLateralAcceleration(const LateralAcceleration& lateral_acceleration) {
336 return ((double)lateral_acceleration.lateral_acceleration_value.value) * 1e-1;
337}
338
345inline double getLateralAccelerationConfidence(const LateralAcceleration& lateral_acceleration) {
346 return ((double)lateral_acceleration.lateral_acceleration_confidence.value) * 1e-1 / etsi_its_msgs::ONE_D_GAUSSIAN_FACTOR;
347}
348
350
360inline const std::array<double, 4> getRefPosConfidence(const CAM& cam) {
361 double object_heading = getHeading(cam) * M_PI / 180.0;
362 return getPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse, object_heading);
363}
364
374inline const std::array<double, 4> getWGSRefPosConfidence(const CAM& cam) {
375 return getWGSPosConfidenceEllipse(cam.cam.cam_parameters.basic_container.reference_position.position_confidence_ellipse);
376}
377
378}