From d1eda9f2c645a7540b4fc8c487fb2a94f45abc35 Mon Sep 17 00:00:00 2001 From: jwillmartin Date: Thu, 30 Nov 2023 17:35:48 -0500 Subject: [PATCH] modified: src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicSafetyMessage-addGrpCarma.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/DestinationType.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/ENUMERATED.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/EstimatedTimeType.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/GeneralString.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/GeneralizedTime.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeeds.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsList.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsType.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/ModeOfTransportType.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/NativeReal.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/NumericString.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalMobilityMessage.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalMobilityMessageStatusType.h modified: src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpCarma.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/PrintableString.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/REAL.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/RELATIVE-OID.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/SeatCount.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/T61String.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/TeletexString.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/UUIDType.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleDescriptionType.h new file: src/tmx/Asn_J2735/include/asn_j2735_r2020/VideotexString.h modified: src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SEQUENCE.h new file: src/tmx/Asn_J2735/src/r2020/.vscode/c_cpp_properties.json new file: src/tmx/Asn_J2735/src/r2020/.vscode/launch.json new file: src/tmx/Asn_J2735/src/r2020/.vscode/settings.json modified: src/tmx/Asn_J2735/src/r2020/RegionalExtension.c modified: src/tmx/TmxUtils/test/J2735MessageTest.cpp --- .../BasicSafetyMessage-addGrpCarma.h | 10 +-- .../include/asn_j2735_r2020/DestinationType.h | 42 +++++++++ .../include/asn_j2735_r2020/ENUMERATED.h | 35 ++++++++ .../asn_j2735_r2020/EstimatedTimeType.h | 42 +++++++++ .../include/asn_j2735_r2020/GeneralString.h | 34 ++++++++ .../include/asn_j2735_r2020/GeneralizedTime.h | 77 +++++++++++++++++ .../include/asn_j2735_r2020/MobilityNeeds.h | 42 +++++++++ .../asn_j2735_r2020/MobilityNeedsList.h | 47 ++++++++++ .../asn_j2735_r2020/MobilityNeedsType.h | 50 +++++++++++ .../asn_j2735_r2020/ModeOfTransportType.h | 51 +++++++++++ .../include/asn_j2735_r2020/NativeReal.h | 39 +++++++++ .../include/asn_j2735_r2020/NumericString.h | 35 ++++++++ .../asn_j2735_r2020/PersonalMobilityMessage.h | 85 +++++++++++++++++++ .../PersonalMobilityMessageStatusType.h | 52 ++++++++++++ .../asn_j2735_r2020/Position3D-addGrpCarma.h | 6 +- .../include/asn_j2735_r2020/PrintableString.h | 35 ++++++++ .../Asn_J2735/include/asn_j2735_r2020/REAL.h | 51 +++++++++++ .../include/asn_j2735_r2020/RELATIVE-OID.h | 48 +++++++++++ .../include/asn_j2735_r2020/SeatCount.h | 42 +++++++++ .../include/asn_j2735_r2020/T61String.h | 34 ++++++++ .../include/asn_j2735_r2020/TeletexString.h | 34 ++++++++ .../include/asn_j2735_r2020/UUIDType.h | 42 +++++++++ .../asn_j2735_r2020/VehicleDescriptionType.h | 42 +++++++++ .../include/asn_j2735_r2020/VideotexString.h | 34 ++++++++ .../include/asn_j2735_r2020/constr_SEQUENCE.h | 4 +- .../src/r2020/.vscode/c_cpp_properties.json | 18 ++++ .../Asn_J2735/src/r2020/.vscode/launch.json | 24 ++++++ .../Asn_J2735/src/r2020/.vscode/settings.json | 59 +++++++++++++ .../Asn_J2735/src/r2020/RegionalExtension.c | 9 +- src/tmx/TmxUtils/test/J2735MessageTest.cpp | 11 ++- 30 files changed, 1116 insertions(+), 18 deletions(-) create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/DestinationType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ENUMERATED.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/EstimatedTimeType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/GeneralString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/GeneralizedTime.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeeds.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsList.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/ModeOfTransportType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NativeReal.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/NumericString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalMobilityMessage.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalMobilityMessageStatusType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/PrintableString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/REAL.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/RELATIVE-OID.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/SeatCount.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/T61String.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/TeletexString.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/UUIDType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleDescriptionType.h create mode 100644 src/tmx/Asn_J2735/include/asn_j2735_r2020/VideotexString.h create mode 100644 src/tmx/Asn_J2735/src/r2020/.vscode/c_cpp_properties.json create mode 100644 src/tmx/Asn_J2735/src/r2020/.vscode/launch.json create mode 100644 src/tmx/Asn_J2735/src/r2020/.vscode/settings.json diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicSafetyMessage-addGrpCarma.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicSafetyMessage-addGrpCarma.h index 255eb247b..2eb779f66 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicSafetyMessage-addGrpCarma.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/BasicSafetyMessage-addGrpCarma.h @@ -9,12 +9,12 @@ #define _BasicSafetyMessage_addGrpCarma_H_ -#include +#include "asn_application.h" /* Including external dependencies */ -#include -#include -#include +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" #ifdef __cplusplus extern "C" { @@ -53,4 +53,4 @@ extern asn_TYPE_member_t asn_MBR_BasicSafetyMessage_addGrpCarma_1[1]; #include "Position3D-addGrpCarma.h" #endif /* _BasicSafetyMessage_addGrpCarma_H_ */ -#include +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/DestinationType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DestinationType.h new file mode 100644 index 000000000..2fd84bf3e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/DestinationType.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_201603DA_with_PMM.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -S/home/gmb/TMX-OAM/Build/asn1c/skeletons` + */ + +#ifndef _DestinationType_H_ +#define _DestinationType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "Longitude.h" +#include "Latitude.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* DestinationType */ +typedef struct DestinationType { + Longitude_t lon; + Latitude_t lat; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} DestinationType_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_DestinationType; +extern asn_SEQUENCE_specifics_t asn_SPC_DestinationType_specs_1; +extern asn_TYPE_member_t asn_MBR_DestinationType_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _DestinationType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ENUMERATED.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ENUMERATED.h new file mode 100644 index 000000000..e4df29b4f --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ENUMERATED.h @@ -0,0 +1,35 @@ +/*- + * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _ENUMERATED_H_ +#define _ENUMERATED_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef INTEGER_t ENUMERATED_t; /* Implemented via INTEGER */ + +extern asn_TYPE_descriptor_t asn_DEF_ENUMERATED; +extern asn_TYPE_operation_t asn_OP_ENUMERATED; + +per_type_decoder_f ENUMERATED_decode_uper; +per_type_encoder_f ENUMERATED_encode_uper; + +#define ENUMERATED_free ASN__PRIMITIVE_TYPE_free +#define ENUMERATED_print INTEGER_print +#define ENUMERATED_compare INTEGER_compare +#define ENUMERATED_constraint asn_generic_no_constraint +#define ENUMERATED_decode_ber ber_decode_primitive +#define ENUMERATED_encode_der INTEGER_encode_der +#define ENUMERATED_decode_xer INTEGER_decode_xer +#define ENUMERATED_encode_xer INTEGER_encode_xer + +#ifdef __cplusplus +} +#endif + +#endif /* _ENUMERATED_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/EstimatedTimeType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EstimatedTimeType.h new file mode 100644 index 000000000..3108b5319 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/EstimatedTimeType.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_201603DA_with_PMM.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -S/home/gmb/TMX-OAM/Build/asn1c/skeletons` + */ + +#ifndef _EstimatedTimeType_H_ +#define _EstimatedTimeType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* EstimatedTimeType */ +typedef long EstimatedTimeType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EstimatedTimeType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EstimatedTimeType; +asn_struct_free_f EstimatedTimeType_free; +asn_struct_print_f EstimatedTimeType_print; +asn_constr_check_f EstimatedTimeType_constraint; +ber_type_decoder_f EstimatedTimeType_decode_ber; +der_type_encoder_f EstimatedTimeType_encode_der; +xer_type_decoder_f EstimatedTimeType_decode_xer; +xer_type_encoder_f EstimatedTimeType_encode_xer; +per_type_decoder_f EstimatedTimeType_decode_uper; +per_type_encoder_f EstimatedTimeType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EstimatedTimeType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/GeneralString.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GeneralString.h new file mode 100644 index 000000000..55b994fa3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GeneralString.h @@ -0,0 +1,34 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _GeneralString_H_ +#define _GeneralString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t GeneralString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_GeneralString; +extern asn_TYPE_operation_t asn_OP_GeneralString; + +#define GeneralString_free OCTET_STRING_free +#define GeneralString_print OCTET_STRING_print +#define GeneralString_compare OCTET_STRING_compare +#define GeneralString_constraint asn_generic_unknown_constraint +#define GeneralString_decode_ber OCTET_STRING_decode_ber +#define GeneralString_encode_der OCTET_STRING_encode_der +#define GeneralString_decode_xer OCTET_STRING_decode_xer_hex +#define GeneralString_encode_xer OCTET_STRING_encode_xer +#define GeneralString_decode_uper OCTET_STRING_decode_uper +#define GeneralString_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _GeneralString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/GeneralizedTime.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GeneralizedTime.h new file mode 100644 index 000000000..ace9c0271 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/GeneralizedTime.h @@ -0,0 +1,77 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _GeneralizedTime_H_ +#define _GeneralizedTime_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t GeneralizedTime_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_GeneralizedTime; +extern asn_TYPE_operation_t asn_OP_GeneralizedTime; + +asn_struct_print_f GeneralizedTime_print; +asn_constr_check_f GeneralizedTime_constraint; +der_type_encoder_f GeneralizedTime_encode_der; +xer_type_encoder_f GeneralizedTime_encode_xer; + +#define GeneralizedTime_free OCTET_STRING_free +#define GeneralizedTime_compare OCTET_STRING_compare +#define GeneralizedTime_decode_ber OCTET_STRING_decode_ber +#define GeneralizedTime_decode_xer OCTET_STRING_decode_xer_utf8 +#define GeneralizedTime_decode_uper OCTET_STRING_decode_uper +#define GeneralizedTime_encode_uper OCTET_STRING_encode_uper + +/*********************** + * Some handy helpers. * + ***********************/ + +struct tm; /* */ + +/* + * Convert a GeneralizedTime structure into time_t + * and optionally into struct tm. + * If as_gmt is given, the resulting _optional_tm4fill will have a GMT zone, + * instead of default local one. + * On error returns -1 and errno set to EINVAL + */ +time_t asn_GT2time(const GeneralizedTime_t *, struct tm *_optional_tm4fill, + int as_gmt); + +/* A version of the above function also returning the fractions of seconds */ +time_t asn_GT2time_frac(const GeneralizedTime_t *, + int *frac_value, int *frac_digits, /* (value / (10 ^ digits)) */ + struct tm *_optional_tm4fill, int as_gmt); + +/* + * Another version returning fractions with defined precision + * For example, parsing of the time ending with ".1" seconds + * with frac_digits=3 (msec) would yield frac_value = 100. + */ +time_t asn_GT2time_prec(const GeneralizedTime_t *, + int *frac_value, int frac_digits, + struct tm *_optional_tm4fill, int as_gmt); + +/* + * Convert a struct tm into GeneralizedTime. + * If _optional_gt is not given, this function will try to allocate one. + * If force_gmt is given, the resulting GeneralizedTime will be forced + * into a GMT time zone (encoding ends with a "Z"). + * On error, this function returns 0 and sets errno. + */ +GeneralizedTime_t *asn_time2GT(GeneralizedTime_t *_optional_gt, + const struct tm *, int force_gmt); +GeneralizedTime_t *asn_time2GT_frac(GeneralizedTime_t *_optional_gt, + const struct tm *, int frac_value, int frac_digits, int force_gmt); + +#ifdef __cplusplus +} +#endif + +#endif /* _GeneralizedTime_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeeds.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeeds.h new file mode 100644 index 000000000..4eceaa686 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeeds.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_201603DA_with_PMM.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -S/home/gmb/TMX-OAM/Build/asn1c/skeletons` + */ + +#ifndef _MobilityNeeds_H_ +#define _MobilityNeeds_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "MobilityNeedsType.h" +#include "SeatCount.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* MobilityNeeds */ +typedef struct MobilityNeeds { + MobilityNeedsType_t type; + SeatCount_t count; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityNeeds_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityNeeds; +extern asn_SEQUENCE_specifics_t asn_SPC_MobilityNeeds_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityNeeds_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityNeeds_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsList.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsList.h new file mode 100644 index 000000000..05421eb09 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsList.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_201603DA_with_PMM.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -S/home/gmb/TMX-OAM/Build/asn1c/skeletons` + */ + +#ifndef _MobilityNeedsList_H_ +#define _MobilityNeedsList_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct MobilityNeeds; + +/* MobilityNeedsList */ +typedef struct MobilityNeedsList { + A_SEQUENCE_OF(struct MobilityNeeds) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MobilityNeedsList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MobilityNeedsList; +extern asn_SET_OF_specifics_t asn_SPC_MobilityNeedsList_specs_1; +extern asn_TYPE_member_t asn_MBR_MobilityNeedsList_1[1]; +extern asn_per_constraints_t asn_PER_type_MobilityNeedsList_constr_1; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "MobilityNeeds.h" + +#endif /* _MobilityNeedsList_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsType.h new file mode 100644 index 000000000..9da4492ee --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/MobilityNeedsType.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_201603DA_with_PMM.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -S/home/gmb/TMX-OAM/Build/asn1c/skeletons` + */ + +#ifndef _MobilityNeedsType_H_ +#define _MobilityNeedsType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MobilityNeedsType { + MobilityNeedsType_noSpecialNeeds = 0, + MobilityNeedsType_wheelchair = 1, + MobilityNeedsType_needsSeat = 2 +} e_MobilityNeedsType; + +/* MobilityNeedsType */ +typedef long MobilityNeedsType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MobilityNeedsType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MobilityNeedsType; +extern const asn_INTEGER_specifics_t asn_SPC_MobilityNeedsType_specs_1; +asn_struct_free_f MobilityNeedsType_free; +asn_struct_print_f MobilityNeedsType_print; +asn_constr_check_f MobilityNeedsType_constraint; +ber_type_decoder_f MobilityNeedsType_decode_ber; +der_type_encoder_f MobilityNeedsType_encode_der; +xer_type_decoder_f MobilityNeedsType_decode_xer; +xer_type_encoder_f MobilityNeedsType_encode_xer; +per_type_decoder_f MobilityNeedsType_decode_uper; +per_type_encoder_f MobilityNeedsType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MobilityNeedsType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/ModeOfTransportType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ModeOfTransportType.h new file mode 100644 index 000000000..8d7f72926 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/ModeOfTransportType.h @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_201603DA_with_PMM.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -S/home/gmb/TMX-OAM/Build/asn1c/skeletons` + */ + +#ifndef _ModeOfTransportType_H_ +#define _ModeOfTransportType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ModeOfTransportType { + ModeOfTransportType_noPreference = 0, + ModeOfTransportType_transit = 1, + ModeOfTransportType_taxi = 2, + ModeOfTransportType_rideShare = 3 +} e_ModeOfTransportType; + +/* ModeOfTransportType */ +typedef long ModeOfTransportType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ModeOfTransportType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ModeOfTransportType; +extern const asn_INTEGER_specifics_t asn_SPC_ModeOfTransportType_specs_1; +asn_struct_free_f ModeOfTransportType_free; +asn_struct_print_f ModeOfTransportType_print; +asn_constr_check_f ModeOfTransportType_constraint; +ber_type_decoder_f ModeOfTransportType_decode_ber; +der_type_encoder_f ModeOfTransportType_encode_der; +xer_type_decoder_f ModeOfTransportType_decode_xer; +xer_type_encoder_f ModeOfTransportType_encode_xer; +per_type_decoder_f ModeOfTransportType_decode_uper; +per_type_encoder_f ModeOfTransportType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ModeOfTransportType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NativeReal.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NativeReal.h new file mode 100644 index 000000000..cfdd1bd1c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NativeReal.h @@ -0,0 +1,39 @@ +/*- + * Copyright (c) 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +/* + * This type differs from the standard REAL in that it is modelled using + * the fixed machine type (double), so it can hold only values of + * limited precision. There is no explicit type (i.e., NativeReal_t). + * Use of this type is normally enabled by -fnative-types. + */ +#ifndef ASN_TYPE_NativeReal_H +#define ASN_TYPE_NativeReal_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +extern asn_TYPE_descriptor_t asn_DEF_NativeReal; +extern asn_TYPE_operation_t asn_OP_NativeReal; + +asn_struct_free_f NativeReal_free; +asn_struct_print_f NativeReal_print; +asn_struct_compare_f NativeReal_compare; +ber_type_decoder_f NativeReal_decode_ber; +der_type_encoder_f NativeReal_encode_der; +xer_type_decoder_f NativeReal_decode_xer; +xer_type_encoder_f NativeReal_encode_xer; +per_type_decoder_f NativeReal_decode_uper; +per_type_encoder_f NativeReal_encode_uper; + +#define NativeReal_constraint asn_generic_no_constraint + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_TYPE_NativeReal_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/NumericString.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NumericString.h new file mode 100644 index 000000000..8e4f7ec9d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/NumericString.h @@ -0,0 +1,35 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _NumericString_H_ +#define _NumericString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t NumericString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_NumericString; +extern asn_TYPE_operation_t asn_OP_NumericString; + +asn_constr_check_f NumericString_constraint; + +#define NumericString_free OCTET_STRING_free +#define NumericString_print OCTET_STRING_print_utf8 +#define NumericString_compare OCTET_STRING_compare +#define NumericString_decode_ber OCTET_STRING_decode_ber +#define NumericString_encode_der OCTET_STRING_encode_der +#define NumericString_decode_xer OCTET_STRING_decode_xer_utf8 +#define NumericString_encode_xer OCTET_STRING_encode_xer_utf8 +#define NumericString_decode_uper OCTET_STRING_decode_uper +#define NumericString_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _NumericString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalMobilityMessage.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalMobilityMessage.h new file mode 100644 index 000000000..5a1c80e51 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalMobilityMessage.h @@ -0,0 +1,85 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_201603DA_with_PMM.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -S/home/gmb/TMX-OAM/Build/asn1c/skeletons` + */ + +#ifndef _PersonalMobilityMessage_H_ +#define _PersonalMobilityMessage_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "UUIDType.h" +#include "RequestID.h" +#include "MinuteOfTheYear.h" +#include "PersonalMobilityMessageStatusType.h" +#include "Position3D.h" +#include "ModeOfTransportType.h" +#include "EstimatedTimeType.h" +#include "DSRCEquippedType.h" +#include "VehicleDescriptionType.h" +#include "asn_SEQUENCE_OF.h" +#include "constr_SEQUENCE_OF.h" +#include "constr_SEQUENCE.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PositionalAccuracy; +struct DFullTime; +struct DestinationType; +struct MobilityNeedsList; +struct RegionalExtension; + +/* PersonalMobilityMessage */ +typedef struct PersonalMobilityMessage { + UUIDType_t groupId; + RequestID_t requestId; + MinuteOfTheYear_t *timeStamp /* OPTIONAL */; + PersonalMobilityMessageStatusType_t status; + Position3D_t position; + struct PositionalAccuracy *accuracy /* OPTIONAL */; + struct DFullTime *requestDate /* OPTIONAL */; + struct DFullTime *pickupDate /* OPTIONAL */; + struct DestinationType *destination /* OPTIONAL */; + struct MobilityNeedsList *mobilityNeeds /* OPTIONAL */; + ModeOfTransportType_t *modeOfTransport /* OPTIONAL */; + EstimatedTimeType_t *eta /* OPTIONAL */; + DSRCEquippedType_t *isDSRCEquipped /* OPTIONAL */; + VehicleDescriptionType_t *vehicleDesc /* OPTIONAL */; + struct PersonalMobilityMessage__regional { + A_SEQUENCE_OF(struct RegionalExtension) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *regional; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PersonalMobilityMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PersonalMobilityMessage; + +#ifdef __cplusplus +} +#endif + +/* Referred external types */ +#include "PositionalAccuracy.h" +#include "DFullTime.h" +#include "DestinationType.h" +#include "MobilityNeedsList.h" +#include "RegionalExtension.h" + +#endif /* _PersonalMobilityMessage_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalMobilityMessageStatusType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalMobilityMessageStatusType.h new file mode 100644 index 000000000..2821b8fcc --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PersonalMobilityMessageStatusType.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_201603DA_with_PMM.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -S/home/gmb/TMX-OAM/Build/asn1c/skeletons` + */ + +#ifndef _PersonalMobilityMessageStatusType_H_ +#define _PersonalMobilityMessageStatusType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeEnumerated.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum PersonalMobilityMessageStatusType { + PersonalMobilityMessageStatusType_new = 0, + PersonalMobilityMessageStatusType_update = 1, + PersonalMobilityMessageStatusType_response = 2, + PersonalMobilityMessageStatusType_arrival = 3, + PersonalMobilityMessageStatusType_completed = 4 +} e_PersonalMobilityMessageStatusType; + +/* PersonalMobilityMessageStatusType */ +typedef long PersonalMobilityMessageStatusType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PersonalMobilityMessageStatusType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PersonalMobilityMessageStatusType; +extern const asn_INTEGER_specifics_t asn_SPC_PersonalMobilityMessageStatusType_specs_1; +asn_struct_free_f PersonalMobilityMessageStatusType_free; +asn_struct_print_f PersonalMobilityMessageStatusType_print; +asn_constr_check_f PersonalMobilityMessageStatusType_constraint; +ber_type_decoder_f PersonalMobilityMessageStatusType_decode_ber; +der_type_encoder_f PersonalMobilityMessageStatusType_encode_der; +xer_type_decoder_f PersonalMobilityMessageStatusType_decode_xer; +xer_type_encoder_f PersonalMobilityMessageStatusType_encode_xer; +per_type_decoder_f PersonalMobilityMessageStatusType_decode_uper; +per_type_encoder_f PersonalMobilityMessageStatusType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PersonalMobilityMessageStatusType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpCarma.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpCarma.h index 3b678cf2c..e7b1000a5 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpCarma.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/Position3D-addGrpCarma.h @@ -9,13 +9,13 @@ #define _Position3D_addGrpCarma_H_ -#include +#include "asn_application.h" /* Including external dependencies */ #include "Latitude.h" #include "Longitude.h" #include "Common_Elevation.h" -#include +#include "constr_SEQUENCE.h" #ifdef __cplusplus extern "C" { @@ -45,4 +45,4 @@ extern asn_TYPE_member_t asn_MBR_Position3D_addGrpCarma_1[3]; #endif #endif /* _Position3D_addGrpCarma_H_ */ -#include +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrintableString.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrintableString.h new file mode 100644 index 000000000..d7889445b --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/PrintableString.h @@ -0,0 +1,35 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PrintableString_H_ +#define _PrintableString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t PrintableString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_PrintableString; +extern asn_TYPE_operation_t asn_OP_PrintableString; + +asn_constr_check_f PrintableString_constraint; + +#define PrintableString_free OCTET_STRING_free +#define PrintableString_print OCTET_STRING_print_utf8 +#define PrintableString_compare OCTET_STRING_compare +#define PrintableString_decode_ber OCTET_STRING_decode_ber +#define PrintableString_encode_der OCTET_STRING_encode_der +#define PrintableString_decode_xer OCTET_STRING_decode_xer_utf8 +#define PrintableString_encode_xer OCTET_STRING_encode_xer_utf8 +#define PrintableString_decode_uper OCTET_STRING_decode_uper +#define PrintableString_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _PrintableString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/REAL.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/REAL.h new file mode 100644 index 000000000..8bc06230a --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/REAL.h @@ -0,0 +1,51 @@ +/*- + * Copyright (c) 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef ASN_TYPE_REAL_H +#define ASN_TYPE_REAL_H + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef ASN__PRIMITIVE_TYPE_t REAL_t; + +extern asn_TYPE_descriptor_t asn_DEF_REAL; +extern asn_TYPE_operation_t asn_OP_REAL; + +asn_struct_print_f REAL_print; +asn_struct_compare_f REAL_compare; +xer_type_decoder_f REAL_decode_xer; +xer_type_encoder_f REAL_encode_xer; +per_type_decoder_f REAL_decode_uper; +per_type_encoder_f REAL_encode_uper; + +#define REAL_free ASN__PRIMITIVE_TYPE_free, +#define REAL_constraint asn_generic_no_constraint +#define REAL_decode_ber ber_decode_primitive +#define REAL_encode_der der_encode_primitive + +/*********************************** + * Some handy conversion routines. * + ***********************************/ + +ssize_t REAL__dump(double d, int canonical, asn_app_consume_bytes_f *cb, void *app_key); + +/* + * Convert between native double type and REAL representation (DER). + * RETURN VALUES: + * 0: Value converted successfully + * -1: An error occured while converting the value: invalid format. + */ +int asn_REAL2double(const REAL_t *real_ptr, double *d); +int asn_double2REAL(REAL_t *real_ptr, double d); + +#ifdef __cplusplus +} +#endif + +#endif /* ASN_TYPE_REAL_H */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/RELATIVE-OID.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RELATIVE-OID.h new file mode 100644 index 000000000..4a73d2787 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/RELATIVE-OID.h @@ -0,0 +1,48 @@ +/*- + * Copyright (c) 2003, 2004 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _RELATIVE_OID_H_ +#define _RELATIVE_OID_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Implemented via OBJECT IDENTIFIER */ +typedef OBJECT_IDENTIFIER_t RELATIVE_OID_t; + +extern asn_TYPE_descriptor_t asn_DEF_RELATIVE_OID; +extern asn_TYPE_operation_t asn_OP_RELATIVE_OID; + +asn_struct_print_f RELATIVE_OID_print; +xer_type_decoder_f RELATIVE_OID_decode_xer; +xer_type_encoder_f RELATIVE_OID_encode_xer; + +#define RELATIVE_OID_free ASN__PRIMITIVE_TYPE_free +#define RELATIVE_OID_compare OCTET_STRING_compare +#define RELATIVE_OID_constraint asn_generic_no_constraint +#define RELATIVE_OID_decode_ber ber_decode_primitive +#define RELATIVE_OID_encode_der der_encode_primitive +#define RELATIVE_OID_decode_uper OCTET_STRING_decode_uper +#define RELATIVE_OID_encode_uper OCTET_STRING_encode_uper + +/********************************** + * Some handy conversion routines * + **********************************/ + +/* See OBJECT_IDENTIFIER_get_arcs() function in OBJECT_IDENTIFIER.h */ +int RELATIVE_OID_get_arcs(const RELATIVE_OID_t *_roid, + void *arcs, unsigned int arc_type_size, unsigned int arc_slots); + +/* See OBJECT_IDENTIFIER_set_arcs() function in OBJECT_IDENTIFIER.h */ +int RELATIVE_OID_set_arcs(RELATIVE_OID_t *_roid, + void *arcs, unsigned int arc_type_size, unsigned int arcs_slots); + +#ifdef __cplusplus +} +#endif + +#endif /* _RELATIVE_OID_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/SeatCount.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SeatCount.h new file mode 100644 index 000000000..165ab16df --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/SeatCount.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_201603DA_with_PMM.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -S/home/gmb/TMX-OAM/Build/asn1c/skeletons` + */ + +#ifndef _SeatCount_H_ +#define _SeatCount_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "NativeInteger.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* SeatCount */ +typedef long SeatCount_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SeatCount_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SeatCount; +asn_struct_free_f SeatCount_free; +asn_struct_print_f SeatCount_print; +asn_constr_check_f SeatCount_constraint; +ber_type_decoder_f SeatCount_decode_ber; +der_type_encoder_f SeatCount_encode_der; +xer_type_decoder_f SeatCount_decode_xer; +xer_type_encoder_f SeatCount_encode_xer; +per_type_decoder_f SeatCount_decode_uper; +per_type_encoder_f SeatCount_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SeatCount_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/T61String.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/T61String.h new file mode 100644 index 000000000..27f7cc6d3 --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/T61String.h @@ -0,0 +1,34 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _T61String_H_ +#define _T61String_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t T61String_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_T61String; +extern asn_TYPE_operation_t asn_OP_T61String; + +#define T61String_free OCTET_STRING_free +#define T61String_print OCTET_STRING_print +#define T61String_compare OCTET_STRING_compare +#define T61String_constraint asn_generic_unknown_constraint +#define T61String_decode_ber OCTET_STRING_decode_ber +#define T61String_encode_der OCTET_STRING_encode_der +#define T61String_decode_xer OCTET_STRING_decode_xer_hex +#define T61String_encode_xer OCTET_STRING_encode_xer +#define T61String_decode_uper OCTET_STRING_decode_uper +#define T61String_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _T61String_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/TeletexString.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TeletexString.h new file mode 100644 index 000000000..59d0ef79c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/TeletexString.h @@ -0,0 +1,34 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _TeletexString_H_ +#define _TeletexString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t TeletexString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_TeletexString; +extern asn_TYPE_operation_t asn_OP_TeletexString; + +#define TeletexString_free OCTET_STRING_free +#define TeletexString_print OCTET_STRING_print +#define TeletexString_compare OCTET_STRING_compare +#define TeletexString_constraint asn_generic_unknown_constraint +#define TeletexString_decode_ber OCTET_STRING_decode_ber +#define TeletexString_encode_der OCTET_STRING_encode_der +#define TeletexString_decode_xer OCTET_STRING_decode_xer_hex +#define TeletexString_encode_xer OCTET_STRING_encode_xer +#define TeletexString_decode_uper OCTET_STRING_decode_uper +#define TeletexString_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _TeletexString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/UUIDType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/UUIDType.h new file mode 100644 index 000000000..d0486182e --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/UUIDType.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_201603DA_with_PMM.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -S/home/gmb/TMX-OAM/Build/asn1c/skeletons` + */ + +#ifndef _UUIDType_H_ +#define _UUIDType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* UUIDType */ +typedef IA5String_t UUIDType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_UUIDType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_UUIDType; +asn_struct_free_f UUIDType_free; +asn_struct_print_f UUIDType_print; +asn_constr_check_f UUIDType_constraint; +ber_type_decoder_f UUIDType_decode_ber; +der_type_encoder_f UUIDType_encode_der; +xer_type_decoder_f UUIDType_decode_xer; +xer_type_encoder_f UUIDType_encode_xer; +per_type_decoder_f UUIDType_decode_uper; +per_type_encoder_f UUIDType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _UUIDType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleDescriptionType.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleDescriptionType.h new file mode 100644 index 000000000..d3daf790c --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VehicleDescriptionType.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "DSRC" + * found in "../J2735_201603DA_with_PMM.ASN" + * `asn1c -gen-PER -fcompound-names -fincludes-quoted -S/home/gmb/TMX-OAM/Build/asn1c/skeletons` + */ + +#ifndef _VehicleDescriptionType_H_ +#define _VehicleDescriptionType_H_ + + +#include "asn_application.h" + +/* Including external dependencies */ +#include "IA5String.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* VehicleDescriptionType */ +typedef IA5String_t VehicleDescriptionType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_VehicleDescriptionType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_VehicleDescriptionType; +asn_struct_free_f VehicleDescriptionType_free; +asn_struct_print_f VehicleDescriptionType_print; +asn_constr_check_f VehicleDescriptionType_constraint; +ber_type_decoder_f VehicleDescriptionType_decode_ber; +der_type_encoder_f VehicleDescriptionType_encode_der; +xer_type_decoder_f VehicleDescriptionType_decode_xer; +xer_type_encoder_f VehicleDescriptionType_encode_xer; +per_type_decoder_f VehicleDescriptionType_decode_uper; +per_type_encoder_f VehicleDescriptionType_encode_uper; + +#ifdef __cplusplus +} +#endif + +#endif /* _VehicleDescriptionType_H_ */ +#include "asn_internal.h" diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/VideotexString.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VideotexString.h new file mode 100644 index 000000000..1227f581d --- /dev/null +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/VideotexString.h @@ -0,0 +1,34 @@ +/*- + * Copyright (c) 2003 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _VideotexString_H_ +#define _VideotexString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t VideotexString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_VideotexString; +extern asn_TYPE_operation_t asn_OP_VideotexString; + +#define VideotexString_free OCTET_STRING_free +#define VideotexString_print OCTET_STRING_print +#define VideotexString_compare OCTET_STRING_compare +#define VideotexString_constraint asn_generic_unknown_constraint +#define VideotexString_decode_ber OCTET_STRING_decode_ber +#define VideotexString_encode_der OCTET_STRING_encode_der +#define VideotexString_decode_xer OCTET_STRING_decode_xer_hex +#define VideotexString_encode_xer OCTET_STRING_encode_xer +#define VideotexString_decode_uper OCTET_STRING_decode_uper +#define VideotexString_encode_uper OCTET_STRING_encode_uper + +#ifdef __cplusplus +} +#endif + +#endif /* _VideotexString_H_ */ diff --git a/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SEQUENCE.h b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SEQUENCE.h index 5ecfd8f22..c494f3524 100644 --- a/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SEQUENCE.h +++ b/src/tmx/Asn_J2735/include/asn_j2735_r2020/constr_SEQUENCE.h @@ -1,11 +1,11 @@ /*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Copyright (c) 2003-2017 Lev Walkin "vlm@lionet.info". All rights reserved. * Redistribution and modifications are permitted subject to BSD license. */ #ifndef _CONSTR_SEQUENCE_H_ #define _CONSTR_SEQUENCE_H_ -#include +#include "asn_application.h" #ifdef __cplusplus extern "C" { diff --git a/src/tmx/Asn_J2735/src/r2020/.vscode/c_cpp_properties.json b/src/tmx/Asn_J2735/src/r2020/.vscode/c_cpp_properties.json new file mode 100644 index 000000000..c2098a2d0 --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/.vscode/c_cpp_properties.json @@ -0,0 +1,18 @@ +{ + "configurations": [ + { + "name": "linux-gcc-x64", + "includePath": [ + "${workspaceFolder}/**" + ], + "compilerPath": "/usr/bin/gcc", + "cStandard": "${default}", + "cppStandard": "${default}", + "intelliSenseMode": "linux-gcc-x64", + "compilerArgs": [ + "" + ] + } + ], + "version": 4 +} \ No newline at end of file diff --git a/src/tmx/Asn_J2735/src/r2020/.vscode/launch.json b/src/tmx/Asn_J2735/src/r2020/.vscode/launch.json new file mode 100644 index 000000000..4c377746f --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/.vscode/launch.json @@ -0,0 +1,24 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "name": "C/C++ Runner: Debug Session", + "type": "cppdbg", + "request": "launch", + "args": [], + "stopAtEntry": false, + "externalConsole": false, + "cwd": "/home/willdesk/TestCode/V2X-Hub/src/tmx/Asn_J2735/src/r2020", + "program": "/home/willdesk/TestCode/V2X-Hub/src/tmx/Asn_J2735/src/r2020/build/Debug/outDebug", + "MIMode": "gdb", + "miDebuggerPath": "gdb", + "setupCommands": [ + { + "description": "Enable pretty-printing for gdb", + "text": "-enable-pretty-printing", + "ignoreFailures": true + } + ] + } + ] +} \ No newline at end of file diff --git a/src/tmx/Asn_J2735/src/r2020/.vscode/settings.json b/src/tmx/Asn_J2735/src/r2020/.vscode/settings.json new file mode 100644 index 000000000..3e5eb956e --- /dev/null +++ b/src/tmx/Asn_J2735/src/r2020/.vscode/settings.json @@ -0,0 +1,59 @@ +{ + "C_Cpp_Runner.cCompilerPath": "gcc", + "C_Cpp_Runner.cppCompilerPath": "g++", + "C_Cpp_Runner.debuggerPath": "gdb", + "C_Cpp_Runner.cStandard": "", + "C_Cpp_Runner.cppStandard": "", + "C_Cpp_Runner.msvcBatchPath": "", + "C_Cpp_Runner.useMsvc": false, + "C_Cpp_Runner.warnings": [ + "-Wall", + "-Wextra", + "-Wpedantic", + "-Wshadow", + "-Wformat=2", + "-Wcast-align", + "-Wconversion", + "-Wsign-conversion", + "-Wnull-dereference" + ], + "C_Cpp_Runner.msvcWarnings": [ + "/W4", + "/permissive-", + "/w14242", + "/w14287", + "/w14296", + "/w14311", + "/w14826", + "/w44062", + "/w44242", + "/w14905", + "/w14906", + "/w14263", + "/w44265", + "/w14928" + ], + "C_Cpp_Runner.enableWarnings": true, + "C_Cpp_Runner.warningsAsError": false, + "C_Cpp_Runner.compilerArgs": [], + "C_Cpp_Runner.linkerArgs": [], + "C_Cpp_Runner.includePaths": [], + "C_Cpp_Runner.includeSearch": [ + "*", + "**/*" + ], + "C_Cpp_Runner.excludeSearch": [ + "**/build", + "**/build/**", + "**/.*", + "**/.*/**", + "**/.vscode", + "**/.vscode/**" + ], + "C_Cpp_Runner.useAddressSanitizer": false, + "C_Cpp_Runner.useUndefinedSanitizer": false, + "C_Cpp_Runner.useLeakSanitizer": false, + "C_Cpp_Runner.showCompilationTime": false, + "C_Cpp_Runner.useLinkTimeOptimization": false, + "C_Cpp_Runner.msvcSecureNoWarnings": false +} \ No newline at end of file diff --git a/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c b/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c index 4a12ffd93..3ba5a6a6b 100644 --- a/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c +++ b/src/tmx/Asn_J2735/src/r2020/RegionalExtension.c @@ -4501,8 +4501,8 @@ static asn_CHOICE_specifics_t asn_SPC_regExtValue_specs_3 = { offsetof(struct Reg_BasicSafetyMessage__regExtValue, _asn_ctx), offsetof(struct Reg_BasicSafetyMessage__regExtValue, present), sizeof(((struct Reg_BasicSafetyMessage__regExtValue *)0)->present), - 0, /* No top level tags */ - 0, /* No tags in the map */ + asn_MAP_regExtValue_tag2el_3, + 1, /* Count of tags in the map */ 0, 0, -1 /* Extensions start */ }; @@ -4524,7 +4524,8 @@ asn_TYPE_descriptor_t asn_DEF_regExtValue_3 = { #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ OPEN_TYPE_constraint }, - 0, 0, /* No members */ + asn_MBR_regExtValue_3, + 1, /* Elements count */ &asn_SPC_regExtValue_specs_3 /* Additional specs */ }; @@ -4550,7 +4551,7 @@ asn_TYPE_member_t asn_MBR_Reg_BasicSafetyMessage_1[] = { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), +1, /* EXPLICIT tag at current level */ &asn_DEF_regExtValue_3, - 0, + select_Reg_BasicSafetyMessage_regExtValue_type, { #if !defined(ASN_DISABLE_OER_SUPPORT) &asn_OER_memb_regExtValue_constr_3, diff --git a/src/tmx/TmxUtils/test/J2735MessageTest.cpp b/src/tmx/TmxUtils/test/J2735MessageTest.cpp index 11287233a..4e5185dd1 100644 --- a/src/tmx/TmxUtils/test/J2735MessageTest.cpp +++ b/src/tmx/TmxUtils/test/J2735MessageTest.cpp @@ -542,19 +542,19 @@ TEST_F(J2735MessageTest, EncodeBasicSafetyMessage_PartII) // BSM regional extension auto regional = (BasicSafetyMessage::BasicSafetyMessage__regional*) calloc(1, sizeof(BasicSafetyMessage::BasicSafetyMessage__regional)); - auto reg_bsm = (Reg_BasicSafetyMessage) calloc(1, sizeof(Reg_BasicSafetyMessage)); + auto reg_bsm = (Reg_BasicSafetyMessage_t*) calloc(1, sizeof(Reg_BasicSafetyMessage_t)); reg_bsm->regionId = 128; reg_bsm->regExtValue.present = Reg_BasicSafetyMessage__regExtValue_PR_BasicSafetyMessage_addGrpCarma; auto carma_bsm_data = (BasicSafetyMessage_addGrpCarma_t*) calloc(1, sizeof(BasicSafetyMessage_addGrpCarma_t)); auto carma_bsm_destination_points = (BasicSafetyMessage_addGrpCarma::BasicSafetyMessage_addGrpCarma__routeDestinationPoints*) calloc(1, sizeof(BasicSafetyMessage_addGrpCarma::BasicSafetyMessage_addGrpCarma__routeDestinationPoints)); - auto point = (Position3D_addGrpCarma_t*) calloc(1, sizeof(Position3D_addGrpCarma_t)); + auto point = (Position3D_t*) calloc(1, sizeof(Position3D_t)); auto dummy_lat = 12; auto dummy_long = 1312; point->lat = dummy_lat; point->Long = dummy_long; asn_sequence_add(&carma_bsm_destination_points->list.array, point); - auto point2 = (Position3D_addGrpCarma_t*) calloc(1, sizeof(Position3D_addGrpCarma_t)); + auto point2 = (Position3D_t*) calloc(1, sizeof(Position3D_t)); point2->lat = dummy_lat + 1000; point2->Long = dummy_long + 1000; asn_sequence_add(&carma_bsm_destination_points->list.array, point2); @@ -564,6 +564,8 @@ TEST_F(J2735MessageTest, EncodeBasicSafetyMessage_PartII) asn_sequence_add(®ional->list.array, reg_bsm); message->regional = regional; + xer_fprint(stdout, &asn_DEF_BasicSafetyMessage, message); + //Encode BSM tmx::messages::BsmEncodedMessage bsmEncodeMessage; tmx::messages::BsmMessage* _bsmMessage = new tmx::messages::BsmMessage(message); @@ -620,7 +622,7 @@ TEST_F(J2735MessageTest, EncodeTrafficControlRequest){ TEST_F(J2735MessageTest, EncodeTrafficControlMessage){ //Has tag in TCM - string tsm5str=" 30642B129B984162 0 9 9 0034b8d88d084ffdaf23837926031658 0 0034b8d88d084ffdaf23837926031658 27506547 153722867280912 1111111 epsg:3785 WGS84 27506547 -818331529 281182119 0 424 3403 000 -2037220 -2037220 -2037220 -2037210 -2037220 -2037220 -2047222 -2037220 -203722-2 -2037210 -2037220 -2037220 -2037220 -2037220 -13460 "; + string tsm5str="30642B129B9841620990034b8d88d084ffdaf2383792603165800034b8d88d084ffdaf23837926031658275065471537228672809121111111epsg:3785WGS8427506547-81833152928118211904243403000-2037220-2037220-2037220-2037210-2037220-2037220-2047222-2037220-203722-2-2037210-2037220-2037220-2037220-2037220-13460"; std::stringstream ss; tsm5Message tsm5msg; tsm5EncodedMessage tsm5Enc; @@ -803,6 +805,7 @@ TEST_F(J2735MessageTest, EncodeSDSM) objectData->detObjCommon.headingConf = 1; ASN_SEQUENCE_ADD(&objects->list.array, objectData); message->objects = *objects; + std::cout << message <