Files
Ashin Walpola d107534eb2 Keep vanetza-idf in obu-firmware, so a plain clone builds the firmware
obu-firmware builds against the vanetza-idf C-ITS library, which until now
came from the colleague's microbu-esp32c5 tree beside the repository and was
not tracked here, so a clone of this repository could not build the firmware
it ships. The library alone is now part of obu-firmware, as
obu-firmware/external/vanetza-idf: their external/vanetza-idf at commit
cf4b99f, unchanged (9775 files; see its PROVENANCE.md). CMake takes it from
there by default; -DVANETZA_IDF_DIR still points the build elsewhere.

The rest of the colleague's tree (their own VAM firmware, PKI tooling,
station-link Python tools, the V2X2MAP bridge) stays out of this repository
and gitignored; nothing is pushed to their repository. NOTES.md, docs/06,
TODO.md and the pcap verifier's usage line point at the new location.
2026-09-24 10:56:05 +02:00

334 lines
15 KiB
C

/*
* Generated by asn1c
* From ASN.1 module "ETSI-ITS-CDD"
* found in "TS102894-2v241-CDD.asn"
* `asn1c -fcompound-names -fincludes-quoted -no-gen-example -fprefix=Vanetza_ITS2_ -R`
*/
#ifndef _Vanetza_ITS2_CauseCodeChoice_H_
#define _Vanetza_ITS2_CauseCodeChoice_H_
#include "asn_application.h"
/* Including external dependencies */
#include "SubCauseCodeType.h"
#include "TrafficConditionSubCauseCode.h"
#include "AccidentSubCauseCode.h"
#include "RoadworksSubCauseCode.h"
#include "ImpassabilitySubCauseCode.h"
#include "AdhesionSubCauseCode.h"
#include "HazardousLocation-SurfaceConditionSubCauseCode.h"
#include "HazardousLocation-ObstacleOnTheRoadSubCauseCode.h"
#include "HazardousLocation-AnimalOnTheRoadSubCauseCode.h"
#include "HumanPresenceOnTheRoadSubCauseCode.h"
#include "WrongWayDrivingSubCauseCode.h"
#include "RescueRecoveryAndMaintenanceWorkInProgressSubCauseCode.h"
#include "AdverseWeatherCondition-WindSubCauseCode.h"
#include "AdverseWeatherCondition-VisibilitySubCauseCode.h"
#include "AdverseWeatherCondition-PrecipitationSubCauseCode.h"
#include "SlowVehicleSubCauseCode.h"
#include "DangerousEndOfQueueSubCauseCode.h"
#include "VehicleBreakdownSubCauseCode.h"
#include "PostCrashSubCauseCode.h"
#include "HumanProblemSubCauseCode.h"
#include "StationaryVehicleSubCauseCode.h"
#include "EmergencyVehicleApproachingSubCauseCode.h"
#include "HazardousLocation-DangerousCurveSubCauseCode.h"
#include "CollisionRiskSubCauseCode.h"
#include "SignalViolationSubCauseCode.h"
#include "DangerousSituationSubCauseCode.h"
#include "RailwayLevelCrossingSubCauseCode.h"
#include "constr_CHOICE.h"
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum Vanetza_ITS2_CauseCodeChoice_PR {
Vanetza_ITS2_CauseCodeChoice_PR_NOTHING, /* No components present */
Vanetza_ITS2_CauseCodeChoice_PR_reserved0,
Vanetza_ITS2_CauseCodeChoice_PR_trafficCondition1,
Vanetza_ITS2_CauseCodeChoice_PR_accident2,
Vanetza_ITS2_CauseCodeChoice_PR_roadworks3,
Vanetza_ITS2_CauseCodeChoice_PR_detectedRoadworks4,
Vanetza_ITS2_CauseCodeChoice_PR_impassability5,
Vanetza_ITS2_CauseCodeChoice_PR_adhesion6,
Vanetza_ITS2_CauseCodeChoice_PR_aquaplaning7,
Vanetza_ITS2_CauseCodeChoice_PR_reserved8,
Vanetza_ITS2_CauseCodeChoice_PR_hazardousLocation_SurfaceCondition9,
Vanetza_ITS2_CauseCodeChoice_PR_hazardousLocation_ObstacleOnTheRoad10,
Vanetza_ITS2_CauseCodeChoice_PR_hazardousLocation_AnimalOnTheRoad11,
Vanetza_ITS2_CauseCodeChoice_PR_humanPresenceOnTheRoad12,
Vanetza_ITS2_CauseCodeChoice_PR_reserved13,
Vanetza_ITS2_CauseCodeChoice_PR_wrongWayDriving14,
Vanetza_ITS2_CauseCodeChoice_PR_rescueRecoveryAndMaintenanceWorkInProgress15,
Vanetza_ITS2_CauseCodeChoice_PR_reserved16,
Vanetza_ITS2_CauseCodeChoice_PR_adverseWeatherCondition_Wind17,
Vanetza_ITS2_CauseCodeChoice_PR_adverseWeatherCondition_Visibility18,
Vanetza_ITS2_CauseCodeChoice_PR_adverseWeatherCondition_Precipitation19,
Vanetza_ITS2_CauseCodeChoice_PR_violence20,
Vanetza_ITS2_CauseCodeChoice_PR_reserved21,
Vanetza_ITS2_CauseCodeChoice_PR_reserved22,
Vanetza_ITS2_CauseCodeChoice_PR_reserved23,
Vanetza_ITS2_CauseCodeChoice_PR_reserved24,
Vanetza_ITS2_CauseCodeChoice_PR_reserved25,
Vanetza_ITS2_CauseCodeChoice_PR_slowVehicle26,
Vanetza_ITS2_CauseCodeChoice_PR_dangerousEndOfQueue27,
Vanetza_ITS2_CauseCodeChoice_PR_publicTransportVehicleApproaching28,
Vanetza_ITS2_CauseCodeChoice_PR_reserved29,
Vanetza_ITS2_CauseCodeChoice_PR_reserved30,
Vanetza_ITS2_CauseCodeChoice_PR_reserved31,
Vanetza_ITS2_CauseCodeChoice_PR_reserved32,
Vanetza_ITS2_CauseCodeChoice_PR_reserved33,
Vanetza_ITS2_CauseCodeChoice_PR_reserved34,
Vanetza_ITS2_CauseCodeChoice_PR_reserved35,
Vanetza_ITS2_CauseCodeChoice_PR_reserved36,
Vanetza_ITS2_CauseCodeChoice_PR_reserved37,
Vanetza_ITS2_CauseCodeChoice_PR_reserved38,
Vanetza_ITS2_CauseCodeChoice_PR_reserved39,
Vanetza_ITS2_CauseCodeChoice_PR_reserved40,
Vanetza_ITS2_CauseCodeChoice_PR_reserved41,
Vanetza_ITS2_CauseCodeChoice_PR_dontPanic42,
Vanetza_ITS2_CauseCodeChoice_PR_reserved43,
Vanetza_ITS2_CauseCodeChoice_PR_reserved44,
Vanetza_ITS2_CauseCodeChoice_PR_reserved45,
Vanetza_ITS2_CauseCodeChoice_PR_reserved46,
Vanetza_ITS2_CauseCodeChoice_PR_reserved47,
Vanetza_ITS2_CauseCodeChoice_PR_reserved48,
Vanetza_ITS2_CauseCodeChoice_PR_reserved49,
Vanetza_ITS2_CauseCodeChoice_PR_reserved50,
Vanetza_ITS2_CauseCodeChoice_PR_reserved51,
Vanetza_ITS2_CauseCodeChoice_PR_reserved52,
Vanetza_ITS2_CauseCodeChoice_PR_reserved53,
Vanetza_ITS2_CauseCodeChoice_PR_reserved54,
Vanetza_ITS2_CauseCodeChoice_PR_reserved55,
Vanetza_ITS2_CauseCodeChoice_PR_reserved56,
Vanetza_ITS2_CauseCodeChoice_PR_reserved57,
Vanetza_ITS2_CauseCodeChoice_PR_reserved58,
Vanetza_ITS2_CauseCodeChoice_PR_reserved59,
Vanetza_ITS2_CauseCodeChoice_PR_reserved60,
Vanetza_ITS2_CauseCodeChoice_PR_reserved61,
Vanetza_ITS2_CauseCodeChoice_PR_reserved62,
Vanetza_ITS2_CauseCodeChoice_PR_reserved63,
Vanetza_ITS2_CauseCodeChoice_PR_reserved64,
Vanetza_ITS2_CauseCodeChoice_PR_reserved65,
Vanetza_ITS2_CauseCodeChoice_PR_reserved66,
Vanetza_ITS2_CauseCodeChoice_PR_reserved67,
Vanetza_ITS2_CauseCodeChoice_PR_reserved68,
Vanetza_ITS2_CauseCodeChoice_PR_reserved69,
Vanetza_ITS2_CauseCodeChoice_PR_reserved70,
Vanetza_ITS2_CauseCodeChoice_PR_reserved71,
Vanetza_ITS2_CauseCodeChoice_PR_reserved72,
Vanetza_ITS2_CauseCodeChoice_PR_reserved73,
Vanetza_ITS2_CauseCodeChoice_PR_reserved74,
Vanetza_ITS2_CauseCodeChoice_PR_reserved75,
Vanetza_ITS2_CauseCodeChoice_PR_reserved76,
Vanetza_ITS2_CauseCodeChoice_PR_reserved77,
Vanetza_ITS2_CauseCodeChoice_PR_reserved78,
Vanetza_ITS2_CauseCodeChoice_PR_reserved79,
Vanetza_ITS2_CauseCodeChoice_PR_reserved80,
Vanetza_ITS2_CauseCodeChoice_PR_reserved81,
Vanetza_ITS2_CauseCodeChoice_PR_reserved82,
Vanetza_ITS2_CauseCodeChoice_PR_reserved83,
Vanetza_ITS2_CauseCodeChoice_PR_reserved84,
Vanetza_ITS2_CauseCodeChoice_PR_reserved85,
Vanetza_ITS2_CauseCodeChoice_PR_reserved86,
Vanetza_ITS2_CauseCodeChoice_PR_reserved87,
Vanetza_ITS2_CauseCodeChoice_PR_reserved88,
Vanetza_ITS2_CauseCodeChoice_PR_reserved89,
Vanetza_ITS2_CauseCodeChoice_PR_reserved90,
Vanetza_ITS2_CauseCodeChoice_PR_vehicleBreakdown91,
Vanetza_ITS2_CauseCodeChoice_PR_postCrash92,
Vanetza_ITS2_CauseCodeChoice_PR_humanProblem93,
Vanetza_ITS2_CauseCodeChoice_PR_stationaryVehicle94,
Vanetza_ITS2_CauseCodeChoice_PR_emergencyVehicleApproaching95,
Vanetza_ITS2_CauseCodeChoice_PR_hazardousLocation_DangerousCurve96,
Vanetza_ITS2_CauseCodeChoice_PR_collisionRisk97,
Vanetza_ITS2_CauseCodeChoice_PR_signalViolation98,
Vanetza_ITS2_CauseCodeChoice_PR_dangerousSituation99,
Vanetza_ITS2_CauseCodeChoice_PR_railwayLevelCrossing100,
Vanetza_ITS2_CauseCodeChoice_PR_reserved101,
Vanetza_ITS2_CauseCodeChoice_PR_reserved102,
Vanetza_ITS2_CauseCodeChoice_PR_reserved103,
Vanetza_ITS2_CauseCodeChoice_PR_reserved104,
Vanetza_ITS2_CauseCodeChoice_PR_reserved105,
Vanetza_ITS2_CauseCodeChoice_PR_reserved106,
Vanetza_ITS2_CauseCodeChoice_PR_reserved107,
Vanetza_ITS2_CauseCodeChoice_PR_reserved108,
Vanetza_ITS2_CauseCodeChoice_PR_reserved109,
Vanetza_ITS2_CauseCodeChoice_PR_reserved110,
Vanetza_ITS2_CauseCodeChoice_PR_reserved111,
Vanetza_ITS2_CauseCodeChoice_PR_reserved112,
Vanetza_ITS2_CauseCodeChoice_PR_reserved113,
Vanetza_ITS2_CauseCodeChoice_PR_reserved114,
Vanetza_ITS2_CauseCodeChoice_PR_reserved115,
Vanetza_ITS2_CauseCodeChoice_PR_reserved116,
Vanetza_ITS2_CauseCodeChoice_PR_reserved117,
Vanetza_ITS2_CauseCodeChoice_PR_reserved118,
Vanetza_ITS2_CauseCodeChoice_PR_reserved119,
Vanetza_ITS2_CauseCodeChoice_PR_reserved120,
Vanetza_ITS2_CauseCodeChoice_PR_reserved121,
Vanetza_ITS2_CauseCodeChoice_PR_reserved122,
Vanetza_ITS2_CauseCodeChoice_PR_reserved123,
Vanetza_ITS2_CauseCodeChoice_PR_reserved124,
Vanetza_ITS2_CauseCodeChoice_PR_reserved125,
Vanetza_ITS2_CauseCodeChoice_PR_reserved126,
Vanetza_ITS2_CauseCodeChoice_PR_reserved127,
Vanetza_ITS2_CauseCodeChoice_PR_reserved128
} Vanetza_ITS2_CauseCodeChoice_PR;
/* Vanetza_ITS2_CauseCodeChoice */
typedef struct Vanetza_ITS2_CauseCodeChoice {
Vanetza_ITS2_CauseCodeChoice_PR present;
union Vanetza_ITS2_CauseCodeChoice_u {
Vanetza_ITS2_SubCauseCodeType_t reserved0;
Vanetza_ITS2_TrafficConditionSubCauseCode_t trafficCondition1;
Vanetza_ITS2_AccidentSubCauseCode_t accident2;
Vanetza_ITS2_RoadworksSubCauseCode_t roadworks3;
Vanetza_ITS2_SubCauseCodeType_t detectedRoadworks4;
Vanetza_ITS2_ImpassabilitySubCauseCode_t impassability5;
Vanetza_ITS2_AdhesionSubCauseCode_t adhesion6;
Vanetza_ITS2_SubCauseCodeType_t aquaplaning7;
Vanetza_ITS2_SubCauseCodeType_t reserved8;
Vanetza_ITS2_HazardousLocation_SurfaceConditionSubCauseCode_t hazardousLocation_SurfaceCondition9;
Vanetza_ITS2_HazardousLocation_ObstacleOnTheRoadSubCauseCode_t hazardousLocation_ObstacleOnTheRoad10;
Vanetza_ITS2_HazardousLocation_AnimalOnTheRoadSubCauseCode_t hazardousLocation_AnimalOnTheRoad11;
Vanetza_ITS2_HumanPresenceOnTheRoadSubCauseCode_t humanPresenceOnTheRoad12;
Vanetza_ITS2_SubCauseCodeType_t reserved13;
Vanetza_ITS2_WrongWayDrivingSubCauseCode_t wrongWayDriving14;
Vanetza_ITS2_RescueRecoveryAndMaintenanceWorkInProgressSubCauseCode_t rescueRecoveryAndMaintenanceWorkInProgress15;
Vanetza_ITS2_SubCauseCodeType_t reserved16;
Vanetza_ITS2_AdverseWeatherCondition_WindSubCauseCode_t adverseWeatherCondition_Wind17;
Vanetza_ITS2_AdverseWeatherCondition_VisibilitySubCauseCode_t adverseWeatherCondition_Visibility18;
Vanetza_ITS2_AdverseWeatherCondition_PrecipitationSubCauseCode_t adverseWeatherCondition_Precipitation19;
Vanetza_ITS2_SubCauseCodeType_t violence20;
Vanetza_ITS2_SubCauseCodeType_t reserved21;
Vanetza_ITS2_SubCauseCodeType_t reserved22;
Vanetza_ITS2_SubCauseCodeType_t reserved23;
Vanetza_ITS2_SubCauseCodeType_t reserved24;
Vanetza_ITS2_SubCauseCodeType_t reserved25;
Vanetza_ITS2_SlowVehicleSubCauseCode_t slowVehicle26;
Vanetza_ITS2_DangerousEndOfQueueSubCauseCode_t dangerousEndOfQueue27;
Vanetza_ITS2_SubCauseCodeType_t publicTransportVehicleApproaching28;
Vanetza_ITS2_SubCauseCodeType_t reserved29;
Vanetza_ITS2_SubCauseCodeType_t reserved30;
Vanetza_ITS2_SubCauseCodeType_t reserved31;
Vanetza_ITS2_SubCauseCodeType_t reserved32;
Vanetza_ITS2_SubCauseCodeType_t reserved33;
Vanetza_ITS2_SubCauseCodeType_t reserved34;
Vanetza_ITS2_SubCauseCodeType_t reserved35;
Vanetza_ITS2_SubCauseCodeType_t reserved36;
Vanetza_ITS2_SubCauseCodeType_t reserved37;
Vanetza_ITS2_SubCauseCodeType_t reserved38;
Vanetza_ITS2_SubCauseCodeType_t reserved39;
Vanetza_ITS2_SubCauseCodeType_t reserved40;
Vanetza_ITS2_SubCauseCodeType_t reserved41;
Vanetza_ITS2_SubCauseCodeType_t dontPanic42;
Vanetza_ITS2_SubCauseCodeType_t reserved43;
Vanetza_ITS2_SubCauseCodeType_t reserved44;
Vanetza_ITS2_SubCauseCodeType_t reserved45;
Vanetza_ITS2_SubCauseCodeType_t reserved46;
Vanetza_ITS2_SubCauseCodeType_t reserved47;
Vanetza_ITS2_SubCauseCodeType_t reserved48;
Vanetza_ITS2_SubCauseCodeType_t reserved49;
Vanetza_ITS2_SubCauseCodeType_t reserved50;
Vanetza_ITS2_SubCauseCodeType_t reserved51;
Vanetza_ITS2_SubCauseCodeType_t reserved52;
Vanetza_ITS2_SubCauseCodeType_t reserved53;
Vanetza_ITS2_SubCauseCodeType_t reserved54;
Vanetza_ITS2_SubCauseCodeType_t reserved55;
Vanetza_ITS2_SubCauseCodeType_t reserved56;
Vanetza_ITS2_SubCauseCodeType_t reserved57;
Vanetza_ITS2_SubCauseCodeType_t reserved58;
Vanetza_ITS2_SubCauseCodeType_t reserved59;
Vanetza_ITS2_SubCauseCodeType_t reserved60;
Vanetza_ITS2_SubCauseCodeType_t reserved61;
Vanetza_ITS2_SubCauseCodeType_t reserved62;
Vanetza_ITS2_SubCauseCodeType_t reserved63;
Vanetza_ITS2_SubCauseCodeType_t reserved64;
Vanetza_ITS2_SubCauseCodeType_t reserved65;
Vanetza_ITS2_SubCauseCodeType_t reserved66;
Vanetza_ITS2_SubCauseCodeType_t reserved67;
Vanetza_ITS2_SubCauseCodeType_t reserved68;
Vanetza_ITS2_SubCauseCodeType_t reserved69;
Vanetza_ITS2_SubCauseCodeType_t reserved70;
Vanetza_ITS2_SubCauseCodeType_t reserved71;
Vanetza_ITS2_SubCauseCodeType_t reserved72;
Vanetza_ITS2_SubCauseCodeType_t reserved73;
Vanetza_ITS2_SubCauseCodeType_t reserved74;
Vanetza_ITS2_SubCauseCodeType_t reserved75;
Vanetza_ITS2_SubCauseCodeType_t reserved76;
Vanetza_ITS2_SubCauseCodeType_t reserved77;
Vanetza_ITS2_SubCauseCodeType_t reserved78;
Vanetza_ITS2_SubCauseCodeType_t reserved79;
Vanetza_ITS2_SubCauseCodeType_t reserved80;
Vanetza_ITS2_SubCauseCodeType_t reserved81;
Vanetza_ITS2_SubCauseCodeType_t reserved82;
Vanetza_ITS2_SubCauseCodeType_t reserved83;
Vanetza_ITS2_SubCauseCodeType_t reserved84;
Vanetza_ITS2_SubCauseCodeType_t reserved85;
Vanetza_ITS2_SubCauseCodeType_t reserved86;
Vanetza_ITS2_SubCauseCodeType_t reserved87;
Vanetza_ITS2_SubCauseCodeType_t reserved88;
Vanetza_ITS2_SubCauseCodeType_t reserved89;
Vanetza_ITS2_SubCauseCodeType_t reserved90;
Vanetza_ITS2_VehicleBreakdownSubCauseCode_t vehicleBreakdown91;
Vanetza_ITS2_PostCrashSubCauseCode_t postCrash92;
Vanetza_ITS2_HumanProblemSubCauseCode_t humanProblem93;
Vanetza_ITS2_StationaryVehicleSubCauseCode_t stationaryVehicle94;
Vanetza_ITS2_EmergencyVehicleApproachingSubCauseCode_t emergencyVehicleApproaching95;
Vanetza_ITS2_HazardousLocation_DangerousCurveSubCauseCode_t hazardousLocation_DangerousCurve96;
Vanetza_ITS2_CollisionRiskSubCauseCode_t collisionRisk97;
Vanetza_ITS2_SignalViolationSubCauseCode_t signalViolation98;
Vanetza_ITS2_DangerousSituationSubCauseCode_t dangerousSituation99;
Vanetza_ITS2_RailwayLevelCrossingSubCauseCode_t railwayLevelCrossing100;
Vanetza_ITS2_SubCauseCodeType_t reserved101;
Vanetza_ITS2_SubCauseCodeType_t reserved102;
Vanetza_ITS2_SubCauseCodeType_t reserved103;
Vanetza_ITS2_SubCauseCodeType_t reserved104;
Vanetza_ITS2_SubCauseCodeType_t reserved105;
Vanetza_ITS2_SubCauseCodeType_t reserved106;
Vanetza_ITS2_SubCauseCodeType_t reserved107;
Vanetza_ITS2_SubCauseCodeType_t reserved108;
Vanetza_ITS2_SubCauseCodeType_t reserved109;
Vanetza_ITS2_SubCauseCodeType_t reserved110;
Vanetza_ITS2_SubCauseCodeType_t reserved111;
Vanetza_ITS2_SubCauseCodeType_t reserved112;
Vanetza_ITS2_SubCauseCodeType_t reserved113;
Vanetza_ITS2_SubCauseCodeType_t reserved114;
Vanetza_ITS2_SubCauseCodeType_t reserved115;
Vanetza_ITS2_SubCauseCodeType_t reserved116;
Vanetza_ITS2_SubCauseCodeType_t reserved117;
Vanetza_ITS2_SubCauseCodeType_t reserved118;
Vanetza_ITS2_SubCauseCodeType_t reserved119;
Vanetza_ITS2_SubCauseCodeType_t reserved120;
Vanetza_ITS2_SubCauseCodeType_t reserved121;
Vanetza_ITS2_SubCauseCodeType_t reserved122;
Vanetza_ITS2_SubCauseCodeType_t reserved123;
Vanetza_ITS2_SubCauseCodeType_t reserved124;
Vanetza_ITS2_SubCauseCodeType_t reserved125;
Vanetza_ITS2_SubCauseCodeType_t reserved126;
Vanetza_ITS2_SubCauseCodeType_t reserved127;
Vanetza_ITS2_SubCauseCodeType_t reserved128;
} choice;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} Vanetza_ITS2_CauseCodeChoice_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_Vanetza_ITS2_CauseCodeChoice;
extern asn_CHOICE_specifics_t asn_SPC_Vanetza_ITS2_CauseCodeChoice_specs_1;
extern asn_TYPE_member_t asn_MBR_Vanetza_ITS2_CauseCodeChoice_1[129];
extern asn_oer_constraints_t asn_OER_type_Vanetza_ITS2_CauseCodeChoice_constr_1;
extern asn_per_constraints_t asn_PER_type_Vanetza_ITS2_CauseCodeChoice_constr_1;
#ifdef __cplusplus
}
#endif
#endif /* _Vanetza_ITS2_CauseCodeChoice_H_ */
#include "asn_internal.h"