CauseCodeChoice
This is a ROS message definition.
Source
# ==============================================================================
# MIT License
#
# Copyright (c) 2023-2024 Institute for Automotive Engineering (ika), RWTH Aachen University
# Copyright (c) 2024 Instituto de Telecomunicações, Universidade de Aveiro
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
# ==============================================================================
# --- Auto-generated by asn1ToRosMsg.py ----------------------------------------
# --- ASN.1 Definition ---------------------------------------------------------
# CauseCodeChoice::= CHOICE {
# reserved0 SubCauseCodeType,
# trafficCondition1 TrafficConditionSubCauseCode,
# accident2 AccidentSubCauseCode,
# roadworks3 RoadworksSubCauseCode,
# reserved4 SubCauseCodeType,
# impassability5 ImpassabilitySubCauseCode,
# adverseWeatherCondition-Adhesion6 AdverseWeatherCondition-AdhesionSubCauseCode,
# aquaplaning7 SubCauseCodeType,
# reserved8 SubCauseCodeType,
# hazardousLocation-SurfaceCondition9 HazardousLocation-SurfaceConditionSubCauseCode,
# hazardousLocation-ObstacleOnTheRoad10 HazardousLocation-ObstacleOnTheRoadSubCauseCode,
# hazardousLocation-AnimalOnTheRoad11 HazardousLocation-AnimalOnTheRoadSubCauseCode,
# humanPresenceOnTheRoad12 HumanPresenceOnTheRoadSubCauseCode,
# reserved13 SubCauseCodeType,
# wrongWayDriving14 WrongWayDrivingSubCauseCode,
# rescueAndRecoveryWorkInProgress15 RescueAndRecoveryWorkInProgressSubCauseCode,
# reserved16 SubCauseCodeType,
# adverseWeatherCondition-ExtremeWeatherCondition17 AdverseWeatherCondition-ExtremeWeatherConditionSubCauseCode,
# adverseWeatherCondition-Visibility18 AdverseWeatherCondition-VisibilitySubCauseCode,
# adverseWeatherCondition-Precipitation19 AdverseWeatherCondition-PrecipitationSubCauseCode,
# violence20 SubCauseCodeType,
# reserved21 SubCauseCodeType,
# reserved22 SubCauseCodeType,
# reserved23 SubCauseCodeType,
# reserved24 SubCauseCodeType,
# reserved25 SubCauseCodeType,
# slowVehicle26 SlowVehicleSubCauseCode,
# dangerousEndOfQueue27 DangerousEndOfQueueSubCauseCode,
# publicTransportVehicleApproaching28 SubCauseCodeType,
# reserved29 SubCauseCodeType,
# reserved30 SubCauseCodeType,
# reserved31 SubCauseCodeType,
# reserved32 SubCauseCodeType,
# reserved33 SubCauseCodeType,
# reserved34 SubCauseCodeType,
# reserved35 SubCauseCodeType,
# reserved36 SubCauseCodeType,
# reserved37 SubCauseCodeType,
# reserved38 SubCauseCodeType,
# reserved39 SubCauseCodeType,
# reserved40 SubCauseCodeType,
# reserved41 SubCauseCodeType,
# reserved42 SubCauseCodeType,
# reserved43 SubCauseCodeType,
# reserved44 SubCauseCodeType,
# reserved45 SubCauseCodeType,
# reserved46 SubCauseCodeType,
# reserved47 SubCauseCodeType,
# reserved48 SubCauseCodeType,
# reserved49 SubCauseCodeType,
# reserved50 SubCauseCodeType,
# reserved51 SubCauseCodeType,
# reserved52 SubCauseCodeType,
# reserved53 SubCauseCodeType,
# reserved54 SubCauseCodeType,
# reserved55 SubCauseCodeType,
# reserved56 SubCauseCodeType,
# reserved57 SubCauseCodeType,
# reserved58 SubCauseCodeType,
# reserved59 SubCauseCodeType,
# reserved60 SubCauseCodeType,
# reserved61 SubCauseCodeType,
# reserved62 SubCauseCodeType,
# reserved63 SubCauseCodeType,
# reserved64 SubCauseCodeType,
# reserved65 SubCauseCodeType,
# reserved66 SubCauseCodeType,
# reserved67 SubCauseCodeType,
# reserved68 SubCauseCodeType,
# reserved69 SubCauseCodeType,
# reserved70 SubCauseCodeType,
# reserved71 SubCauseCodeType,
# reserved72 SubCauseCodeType,
# reserved73 SubCauseCodeType,
# reserved74 SubCauseCodeType,
# reserved75 SubCauseCodeType,
# reserved76 SubCauseCodeType,
# reserved77 SubCauseCodeType,
# reserved78 SubCauseCodeType,
# reserved79 SubCauseCodeType,
# reserved80 SubCauseCodeType,
# reserved81 SubCauseCodeType,
# reserved82 SubCauseCodeType,
# reserved83 SubCauseCodeType,
# reserved84 SubCauseCodeType,
# reserved85 SubCauseCodeType,
# reserved86 SubCauseCodeType,
# reserved87 SubCauseCodeType,
# reserved88 SubCauseCodeType,
# reserved89 SubCauseCodeType,
# reserved90 SubCauseCodeType,
# vehicleBreakdown91 VehicleBreakdownSubCauseCode,
# postCrash92 PostCrashSubCauseCode,
# humanProblem93 HumanProblemSubCauseCode,
# stationaryVehicle94 StationaryVehicleSubCauseCode,
# emergencyVehicleApproaching95 EmergencyVehicleApproachingSubCauseCode,
# hazardousLocation-DangerousCurve96 HazardousLocation-DangerousCurveSubCauseCode,
# collisionRisk97 CollisionRiskSubCauseCode,
# signalViolation98 SignalViolationSubCauseCode,
# dangerousSituation99 DangerousSituationSubCauseCode,
# railwayLevelCrossing100 RailwayLevelCrossingSubCauseCode,
# reserved101 SubCauseCodeType,
# reserved102 SubCauseCodeType,
# reserved103 SubCauseCodeType,
# reserved104 SubCauseCodeType,
# reserved105 SubCauseCodeType,
# reserved106 SubCauseCodeType,
# reserved107 SubCauseCodeType,
# reserved108 SubCauseCodeType,
# reserved109 SubCauseCodeType,
# reserved110 SubCauseCodeType,
# reserved111 SubCauseCodeType,
# reserved112 SubCauseCodeType,
# reserved113 SubCauseCodeType,
# reserved114 SubCauseCodeType,
# reserved115 SubCauseCodeType,
# reserved116 SubCauseCodeType,
# reserved117 SubCauseCodeType,
# reserved118 SubCauseCodeType,
# reserved119 SubCauseCodeType,
# reserved120 SubCauseCodeType,
# reserved121 SubCauseCodeType,
# reserved122 SubCauseCodeType,
# reserved123 SubCauseCodeType,
# reserved124 SubCauseCodeType,
# reserved125 SubCauseCodeType,
# reserved126 SubCauseCodeType,
# reserved127 SubCauseCodeType,
# reserved128 SubCauseCodeType
# }
# ------------------------------------------------------------------------------
# *
# * This DF is a representation of the cause code value and associated sub cause code value of a traffic event.
# *
# * The following options are available:
# * - 0 - reserved for future use,
# * - 1 - `trafficCondition1` - in case the type of event is an abnormal traffic condition,
# * - 2 - `accident2` - in case the type of event is a road accident,
# * - 3 - `roadworks3` - in case the type of event is roadwork,
# * - 4 - reserved for future usage,
# * - 5 - `impassability5` - in case the type of event is unmanaged road blocking, referring to any
# * blocking of a road, partial or total, which has not been adequately secured and signposted,
# * - 6 - `adverseWeatherCondition-Adhesion6` - in case the type of event is low adhesion,
# * - 7 - `aquaplaning7` - danger of aquaplaning on the road,
# * - 8 - reserved for future usage,
# * - 9 - `hazardousLocation-SurfaceCondition9` - in case the type of event is abnormal road surface condition,
# * - 10 - `hazardousLocation-ObstacleOnTheRoad10` - in case the type of event is obstacle on the road,
# * - 11 - `hazardousLocation-AnimalOnTheRoad11` - in case the type of event is animal on the road,
# * - 12 - `humanPresenceOnTheRoad` - in case the type of event is presence of human vulnerable road user on the road,
# * - 13 - reserved for future usage,
# * - 14 - `wrongWayDriving14` - in case the type of the event is vehicle driving in wrong way,
# * - 15 - `rescueAndRecoveryWorkInProgress15` - in case the type of event is rescue and recovery work for accident or for a road hazard in progress,
# * - 16 - reserved for future usage,
# * - 17 - `adverseWeatherCondition-ExtremeWeatherCondition17` - in case the type of event is extreme weather condition,
# * - 18 - `adverseWeatherCondition-Visibility18` - in case the type of event is low visibility,
# * - 19 - `adverseWeatherCondition-Precipitation19` - in case the type of event is precipitation,
# * - 20 - `violence20` - in case the the type of event is human violence on or near the road,
# * - 21-25 - reserved for future usage,
# * - 26 - `slowVehicle26` - in case the type of event is slow vehicle driving on the road,
# * - 27 - `dangerousEndOfQueue27` - in case the type of event is dangerous end of vehicle queue,
# * - 28 - `publicTransportVehicleApproaching - in case the type of event is a public transport vehicle approaching, with a priority defined by applicable traffic regulations,
# * - 29-90 - are reserved for future usage,
# * - 91 - `vehicleBreakdown91` - in case the type of event is break down vehicle on the road,
# * - 92 - `postCrash92` - in case the type of event is a detected crash,
# * - 93 - `humanProblem93` - in case the type of event is human health problem in vehicles involved in traffic,
# * - 94 - `stationaryVehicle94` - in case the type of event is stationary vehicle,
# * - 95 - `emergencyVehicleApproaching95` - in case the type of event is an approaching vehicle operating on a mission for which the
# applicable traffic regulations provide it with defined priority rights in traffic.
# * - 96 - `hazardousLocation-DangerousCurve96` - in case the type of event is dangerous curve,
# * - 97 - `collisionRisk97` - in case the type of event is a collision risk,
# * - 98 - `signalViolation98` - in case the type of event is signal violation,
# * - 99 - `dangerousSituation99` - in case the type of event is dangerous situation in which autonomous safety system in vehicle
# * is activated,
# * - 100 - `railwayLevelCrossing100` - in case the type of event is a railway level crossing.
# * - 101-255 - are reserved for future usage.
# *
# * @note: this DF is defined for use as part of CauseCodeV2. It is recommended to use CauseCodeV2.
# * @category: Traffic information
# * @revision: Created in V2.1.1, the type of impassability5 changed to ImpassabilitySubCauseCode in V2.2.1, value 28 added in V2.2.1, definition of value 12 and 95 changed in V2.2.1
#
uint8 choice
SubCauseCodeType reserved0
uint8 CHOICE_RESERVED0 = 0
TrafficConditionSubCauseCode traffic_condition1
uint8 CHOICE_TRAFFIC_CONDITION1 = 1
AccidentSubCauseCode accident2
uint8 CHOICE_ACCIDENT2 = 2
RoadworksSubCauseCode roadworks3
uint8 CHOICE_ROADWORKS3 = 3
SubCauseCodeType reserved4
uint8 CHOICE_RESERVED4 = 4
ImpassabilitySubCauseCode impassability5
uint8 CHOICE_IMPASSABILITY5 = 5
AdverseWeatherConditionAdhesionSubCauseCode adverse_weather_condition_adhesion6
uint8 CHOICE_ADVERSE_WEATHER_CONDITION_ADHESION6 = 6
SubCauseCodeType aquaplaning7
uint8 CHOICE_AQUAPLANING7 = 7
SubCauseCodeType reserved8
uint8 CHOICE_RESERVED8 = 8
HazardousLocationSurfaceConditionSubCauseCode hazardous_location_surface_condition9
uint8 CHOICE_HAZARDOUS_LOCATION_SURFACE_CONDITION9 = 9
HazardousLocationObstacleOnTheRoadSubCauseCode hazardous_location_obstacle_on_the_road10
uint8 CHOICE_HAZARDOUS_LOCATION_OBSTACLE_ON_THE_ROAD10 = 10
HazardousLocationAnimalOnTheRoadSubCauseCode hazardous_location_animal_on_the_road11
uint8 CHOICE_HAZARDOUS_LOCATION_ANIMAL_ON_THE_ROAD11 = 11
HumanPresenceOnTheRoadSubCauseCode human_presence_on_the_road12
uint8 CHOICE_HUMAN_PRESENCE_ON_THE_ROAD12 = 12
SubCauseCodeType reserved13
uint8 CHOICE_RESERVED13 = 13
WrongWayDrivingSubCauseCode wrong_way_driving14
uint8 CHOICE_WRONG_WAY_DRIVING14 = 14
RescueAndRecoveryWorkInProgressSubCauseCode rescue_and_recovery_work_in_progress15
uint8 CHOICE_RESCUE_AND_RECOVERY_WORK_IN_PROGRESS15 = 15
SubCauseCodeType reserved16
uint8 CHOICE_RESERVED16 = 16
AdverseWeatherConditionExtremeWeatherConditionSubCauseCode adverse_weather_condition_extreme_weather_condition17
uint8 CHOICE_ADVERSE_WEATHER_CONDITION_EXTREME_WEATHER_CONDITION17 = 17
AdverseWeatherConditionVisibilitySubCauseCode adverse_weather_condition_visibility18
uint8 CHOICE_ADVERSE_WEATHER_CONDITION_VISIBILITY18 = 18
AdverseWeatherConditionPrecipitationSubCauseCode adverse_weather_condition_precipitation19
uint8 CHOICE_ADVERSE_WEATHER_CONDITION_PRECIPITATION19 = 19
SubCauseCodeType violence20
uint8 CHOICE_VIOLENCE20 = 20
SubCauseCodeType reserved21
uint8 CHOICE_RESERVED21 = 21
SubCauseCodeType reserved22
uint8 CHOICE_RESERVED22 = 22
SubCauseCodeType reserved23
uint8 CHOICE_RESERVED23 = 23
SubCauseCodeType reserved24
uint8 CHOICE_RESERVED24 = 24
SubCauseCodeType reserved25
uint8 CHOICE_RESERVED25 = 25
SlowVehicleSubCauseCode slow_vehicle26
uint8 CHOICE_SLOW_VEHICLE26 = 26
DangerousEndOfQueueSubCauseCode dangerous_end_of_queue27
uint8 CHOICE_DANGEROUS_END_OF_QUEUE27 = 27
SubCauseCodeType public_transport_vehicle_approaching28
uint8 CHOICE_PUBLIC_TRANSPORT_VEHICLE_APPROACHING28 = 28
SubCauseCodeType reserved29
uint8 CHOICE_RESERVED29 = 29
SubCauseCodeType reserved30
uint8 CHOICE_RESERVED30 = 30
SubCauseCodeType reserved31
uint8 CHOICE_RESERVED31 = 31
SubCauseCodeType reserved32
uint8 CHOICE_RESERVED32 = 32
SubCauseCodeType reserved33
uint8 CHOICE_RESERVED33 = 33
SubCauseCodeType reserved34
uint8 CHOICE_RESERVED34 = 34
SubCauseCodeType reserved35
uint8 CHOICE_RESERVED35 = 35
SubCauseCodeType reserved36
uint8 CHOICE_RESERVED36 = 36
SubCauseCodeType reserved37
uint8 CHOICE_RESERVED37 = 37
SubCauseCodeType reserved38
uint8 CHOICE_RESERVED38 = 38
SubCauseCodeType reserved39
uint8 CHOICE_RESERVED39 = 39
SubCauseCodeType reserved40
uint8 CHOICE_RESERVED40 = 40
SubCauseCodeType reserved41
uint8 CHOICE_RESERVED41 = 41
SubCauseCodeType reserved42
uint8 CHOICE_RESERVED42 = 42
SubCauseCodeType reserved43
uint8 CHOICE_RESERVED43 = 43
SubCauseCodeType reserved44
uint8 CHOICE_RESERVED44 = 44
SubCauseCodeType reserved45
uint8 CHOICE_RESERVED45 = 45
SubCauseCodeType reserved46
uint8 CHOICE_RESERVED46 = 46
SubCauseCodeType reserved47
uint8 CHOICE_RESERVED47 = 47
SubCauseCodeType reserved48
uint8 CHOICE_RESERVED48 = 48
SubCauseCodeType reserved49
uint8 CHOICE_RESERVED49 = 49
SubCauseCodeType reserved50
uint8 CHOICE_RESERVED50 = 50
SubCauseCodeType reserved51
uint8 CHOICE_RESERVED51 = 51
SubCauseCodeType reserved52
uint8 CHOICE_RESERVED52 = 52
SubCauseCodeType reserved53
uint8 CHOICE_RESERVED53 = 53
SubCauseCodeType reserved54
uint8 CHOICE_RESERVED54 = 54
SubCauseCodeType reserved55
uint8 CHOICE_RESERVED55 = 55
SubCauseCodeType reserved56
uint8 CHOICE_RESERVED56 = 56
SubCauseCodeType reserved57
uint8 CHOICE_RESERVED57 = 57
SubCauseCodeType reserved58
uint8 CHOICE_RESERVED58 = 58
SubCauseCodeType reserved59
uint8 CHOICE_RESERVED59 = 59
SubCauseCodeType reserved60
uint8 CHOICE_RESERVED60 = 60
SubCauseCodeType reserved61
uint8 CHOICE_RESERVED61 = 61
SubCauseCodeType reserved62
uint8 CHOICE_RESERVED62 = 62
SubCauseCodeType reserved63
uint8 CHOICE_RESERVED63 = 63
SubCauseCodeType reserved64
uint8 CHOICE_RESERVED64 = 64
SubCauseCodeType reserved65
uint8 CHOICE_RESERVED65 = 65
SubCauseCodeType reserved66
uint8 CHOICE_RESERVED66 = 66
SubCauseCodeType reserved67
uint8 CHOICE_RESERVED67 = 67
SubCauseCodeType reserved68
uint8 CHOICE_RESERVED68 = 68
SubCauseCodeType reserved69
uint8 CHOICE_RESERVED69 = 69
SubCauseCodeType reserved70
uint8 CHOICE_RESERVED70 = 70
SubCauseCodeType reserved71
uint8 CHOICE_RESERVED71 = 71
SubCauseCodeType reserved72
uint8 CHOICE_RESERVED72 = 72
SubCauseCodeType reserved73
uint8 CHOICE_RESERVED73 = 73
SubCauseCodeType reserved74
uint8 CHOICE_RESERVED74 = 74
SubCauseCodeType reserved75
uint8 CHOICE_RESERVED75 = 75
SubCauseCodeType reserved76
uint8 CHOICE_RESERVED76 = 76
SubCauseCodeType reserved77
uint8 CHOICE_RESERVED77 = 77
SubCauseCodeType reserved78
uint8 CHOICE_RESERVED78 = 78
SubCauseCodeType reserved79
uint8 CHOICE_RESERVED79 = 79
SubCauseCodeType reserved80
uint8 CHOICE_RESERVED80 = 80
SubCauseCodeType reserved81
uint8 CHOICE_RESERVED81 = 81
SubCauseCodeType reserved82
uint8 CHOICE_RESERVED82 = 82
SubCauseCodeType reserved83
uint8 CHOICE_RESERVED83 = 83
SubCauseCodeType reserved84
uint8 CHOICE_RESERVED84 = 84
SubCauseCodeType reserved85
uint8 CHOICE_RESERVED85 = 85
SubCauseCodeType reserved86
uint8 CHOICE_RESERVED86 = 86
SubCauseCodeType reserved87
uint8 CHOICE_RESERVED87 = 87
SubCauseCodeType reserved88
uint8 CHOICE_RESERVED88 = 88
SubCauseCodeType reserved89
uint8 CHOICE_RESERVED89 = 89
SubCauseCodeType reserved90
uint8 CHOICE_RESERVED90 = 90
VehicleBreakdownSubCauseCode vehicle_breakdown91
uint8 CHOICE_VEHICLE_BREAKDOWN91 = 91
PostCrashSubCauseCode post_crash92
uint8 CHOICE_POST_CRASH92 = 92
HumanProblemSubCauseCode human_problem93
uint8 CHOICE_HUMAN_PROBLEM93 = 93
StationaryVehicleSubCauseCode stationary_vehicle94
uint8 CHOICE_STATIONARY_VEHICLE94 = 94
EmergencyVehicleApproachingSubCauseCode emergency_vehicle_approaching95
uint8 CHOICE_EMERGENCY_VEHICLE_APPROACHING95 = 95
HazardousLocationDangerousCurveSubCauseCode hazardous_location_dangerous_curve96
uint8 CHOICE_HAZARDOUS_LOCATION_DANGEROUS_CURVE96 = 96
CollisionRiskSubCauseCode collision_risk97
uint8 CHOICE_COLLISION_RISK97 = 97
SignalViolationSubCauseCode signal_violation98
uint8 CHOICE_SIGNAL_VIOLATION98 = 98
DangerousSituationSubCauseCode dangerous_situation99
uint8 CHOICE_DANGEROUS_SITUATION99 = 99
RailwayLevelCrossingSubCauseCode railway_level_crossing100
uint8 CHOICE_RAILWAY_LEVEL_CROSSING100 = 100
SubCauseCodeType reserved101
uint8 CHOICE_RESERVED101 = 101
SubCauseCodeType reserved102
uint8 CHOICE_RESERVED102 = 102
SubCauseCodeType reserved103
uint8 CHOICE_RESERVED103 = 103
SubCauseCodeType reserved104
uint8 CHOICE_RESERVED104 = 104
SubCauseCodeType reserved105
uint8 CHOICE_RESERVED105 = 105
SubCauseCodeType reserved106
uint8 CHOICE_RESERVED106 = 106
SubCauseCodeType reserved107
uint8 CHOICE_RESERVED107 = 107
SubCauseCodeType reserved108
uint8 CHOICE_RESERVED108 = 108
SubCauseCodeType reserved109
uint8 CHOICE_RESERVED109 = 109
SubCauseCodeType reserved110
uint8 CHOICE_RESERVED110 = 110
SubCauseCodeType reserved111
uint8 CHOICE_RESERVED111 = 111
SubCauseCodeType reserved112
uint8 CHOICE_RESERVED112 = 112
SubCauseCodeType reserved113
uint8 CHOICE_RESERVED113 = 113
SubCauseCodeType reserved114
uint8 CHOICE_RESERVED114 = 114
SubCauseCodeType reserved115
uint8 CHOICE_RESERVED115 = 115
SubCauseCodeType reserved116
uint8 CHOICE_RESERVED116 = 116
SubCauseCodeType reserved117
uint8 CHOICE_RESERVED117 = 117
SubCauseCodeType reserved118
uint8 CHOICE_RESERVED118 = 118
SubCauseCodeType reserved119
uint8 CHOICE_RESERVED119 = 119
SubCauseCodeType reserved120
uint8 CHOICE_RESERVED120 = 120
SubCauseCodeType reserved121
uint8 CHOICE_RESERVED121 = 121
SubCauseCodeType reserved122
uint8 CHOICE_RESERVED122 = 122
SubCauseCodeType reserved123
uint8 CHOICE_RESERVED123 = 123
SubCauseCodeType reserved124
uint8 CHOICE_RESERVED124 = 124
SubCauseCodeType reserved125
uint8 CHOICE_RESERVED125 = 125
SubCauseCodeType reserved126
uint8 CHOICE_RESERVED126 = 126
SubCauseCodeType reserved127
uint8 CHOICE_RESERVED127 = 127
SubCauseCodeType reserved128
uint8 CHOICE_RESERVED128 = 128