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                                     SubCauseCodeType,
#     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,
#     reserved28                                         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. 
# *
# * @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
# 

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

SubCauseCodeType 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 reserved28
uint8 CHOICE_RESERVED28 = 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